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/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/ibm-bamoe/bamoe-controller-rhel8@sha256:3fcd9ae0bc194c198cbb5ee94272e80f302658733e467766bd1789357e9fd015
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:a287a2fbaded371b8fcae5e4124b2d905bb228f94da0fc899ca2600b378dca0d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:98e9a6618558bc8a1b9cb91d1c9b3380968d335092f6e953d1abe6af96abf65c
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:6cd0f07856d612dca46b0a01a93b796f7a0f112b98cedfd6754f9fd770ee843d
        - registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:5ed8821328413ec11859ae317679f0692afff9945f134fc8909e07a3ac387794
        - registry.redhat.io/amq7/amq-broker@sha256:792c1cb19e62519cc47d834650fe5a6a6ca589a37d0b53d4f4549e80cabae3f9
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:efa55e17190b0ebe1618452f786876ef354b8fbec25c316aed7ed5bb1ce88116
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:25025e489c15108edffe5270d257e1ed9be0a67aa067bcfc184647793aac2617
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:fb326be806b337b0ae1711f974d15e073aebcbad77aaa1123a63cf4f331da5f2
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:191237ccffc476e764714a69e35d9421dcee5ddd7184442d7a8306a06b97e6bb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:457fc73423fa94591bc7e35729a25c58d3465583afccf342fb338b6e11188575
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:b3b7388b3b116ef37aabbb04b5d2c3e36e58d2fc95f1e59795b423010e071fc3
        - registry.redhat.io/openshift4/ose-cli@sha256:b2b93def4eb5edeccfa2d8ba22e493646325842674dff0446b45677bf641a342
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:01bf97beffb3647968aae052cdd401d6d562c35f3e78ac483dbf55c44a71dc2f
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:c9f08ddc6111cdd74faa0db5721d5730fc7716fccf4dc2a658595f7e0c184c10
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:82d8ebde7eb3ecfbf72e5b71e7e392d3a3597fc084b6cf35e8fec23bfe41210d
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:2f1a7519617b5c0d082f943de0db295370649d968d699d76cfd829f4c9826a0f
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:3fd45f2dabca7220772d823275a5697b42dd35f53c27671b093117933ef2d4f6
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:ef1d77bb085172f927ee53d1674c85e2acaf1f580d7cad55bae8bf2c33c49c01
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:c3553707936cb9eee8a6a622643f72c91e1b0c11add5ec9ad5865242a9e133b4
        - registry.redhat.io/jboss-datagrid-7/datagrid73-openshift@sha256:4056b1cf8ff5995f56eecfdc087d9ece56a216dba6bd73acc5693f0778e8d573
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:f714b9c1555e7f27a3c9cf2cf687a74188f36b1283d4e09cec4db3c084d9fe64
        - registry.redhat.io/ibm-bamoe/bamoe-operator-bundle@sha256:54df7eba0292459c0491ba39c15bfcf793e1c0aef042a4b3f6c587b0d45f77af
        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-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        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-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        - 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
        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-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        - 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
        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-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        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-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - 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
        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-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.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/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        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/tuffer-rhel9@sha256:775b261b8f258b369213246f2da5c91218678acb5e3b8bb4670b143f487767af
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:571c48ecb2658ce70199c06dc483ea48a16e032a764a6830388ad845f508d981
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:796860a3e85712c60398c36983e0ff4d45325c7a4de869da2ebf1b6ba4b19825
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:7ce611aefdfedd8b2a633def482cf41f390c95b8f8c800b6163a585f117a9e2e
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:6131053778ea04e437f3005f90d1138aa11ebc58e3a9295e2a8d8ef6713a52be
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:3b8f49c41df15022f8ffdf3a8f8605b14c14f4e10eae754a06a86b6585d158b3
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:5a752cefdaf28bfc53847185cdd5fef1ee47e3dcff8472f8a8bf7bbdc224ef57
        - registry.redhat.io/ubi9/httpd-24@sha256:366cc5bc3b96069fecaa0abeb9d3510c507e69a20de1d205d881da8ae8561ab4
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:329a0dad7842d4ef60430b0e3f188231bea9e579427443ecd42eb62a5c282266
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:603a2ffa54df0bd45ff42ac710dd16331560eda2be93442232b045c959773c4d
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:76c24a38ac89ed632d38e44049f37e4997abfa27fa8cadbb8afb42575031296f
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:75f1049431f9e92898a4217870309cbbb3b39c8362e929c0bad3b53cad4459db
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1f5a30a285a16635a7234c3c1763dfb385c8bffd605fc862b782bdb5c6c61ea3
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:09b8259ec9e982a33bde84c7c901ad70c79f3e5f6dd7880b1b1e573dafcbd56c
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:dc994a95be22b0f4bab022fc362c4f44c6a7d1887a2eb0d04870d75654ec013b
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:540556453c98db3919e5f305a99c699e767e2891a95fe7527ace578f3c67a308
        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/timestamp-authority-rhel9@sha256:531603563c69aac6905cd6b8157d30781040527404ac2313acba5a9310e0b713
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:640633823a54c11fe2a8b3d05e571399fda415b6f0b3adf1ba9806882a94bdd4
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:6270ba29adf779de5d3916d5e82f1cd9491ba89d4ae2042347b6ad6d1819dd26
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:eb38e98dbb9828fe033a5388609132f7246fe77d2f4d258d015a94ea30752b24
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:7c4e739622f68cd924afcb41cc788cdadc34c725283a097e564d620f39637bac
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:a93df3206409de75613d398e7dcd8b30ff7cc36eb00349c435784f73f00a2335
        - registry.redhat.io/ubi9/httpd-24@sha256:badeee0aa3477e61de64f6a2b93e8a3673edd38fc860125f7536506f3d592132
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:030986ea26f33db3a192c67a93cd2bde352f23c68a17b062fc062955675c3c51
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:1c2201d50469d70ec6e21546c7c74bd52251d420dc1dcfa5375c1cf61dd3a9fd
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:12b438ea70f83ee6edb12c96b507f92510f4afba824eac34c8f50793c4199db6
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:fc018a45b7eb48690c46c83f52cac55fa40089e6b02686bc21265dc7c2205b8f
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1d782a127d2f8bdab633f287cb2df2e400ae91bf5d4b913473539d8512dfaab6
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:09b4aeeb607c88c72f69e6f87cb840c82ef5752c64a58fa13551db749fac2530
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:02fbd4772c185edf38fcee4e5c5e1c9dad82b77c9da824addaebc445b67d35ac
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:fe31830df2d99359749cb86cd1ac2f32fcc3de07aae427d2f2cd3998d31d2833
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:c22cdb9a17f85e13c00412cba83aa644e90a0faea0236029d0f1c53fe212e227
        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/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        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-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - 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/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        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-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - 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-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - 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/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        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/lighthouse-agent-rhel9@sha256:5ee9a8aff7bd566cc4633c5191c40d7370349abdbfe19ac6e0588956f879c0c8
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:cd29afa47105e0b49b0f640651c16a73d1190c84fb28aa6feee75d5e89b40b2c
        - 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
        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-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
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:a66dd030eb99207b6aaacc6b7c7cb5182901da836ebf50373c14f8e5ecb7b642
        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-hub-rhel8@sha256:32624f2bddfe8b6b9c6c1c3f2be541c8c61be29680d13b6d446e8874bdf8e219
        - registry.redhat.io/mta/mta-operator-bundle@sha256:f3d585e24d65905b2e9f594dcdb67721aa95057ab7587ae531c3487aa2f94e53
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:1df881da1e20c2501caf53e1cf59b6b366281d842f0948ca5f91694ec1db829d
        - 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
        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-pathfinder-rhel9@sha256:a2a8b6d204d99494a6a005e8cb1fbd92afdc84dc01e4c1de4ad7d8798bd83741
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:c35f3ed429a7d351cb8c2d07600b4ad35615a5ba08e5cc9f8b9bd504aea3f7ee
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:e59725832547e80cab58077a1b6e42c313a4057621defa841f35c0a7627f149d
        - registry.redhat.io/mta/mta-operator-bundle@sha256:a13643117c2867351718a872f7f1b2350c67855ca73a727a1dc140754ffe6589
        - 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
        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/openshift4/ose-oauth-proxy@sha256:af879d8b9b5e396a5308fb675a1d6dba6d70151b9bdbe7829362e081a6adab1c
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:0e1ec99af5666a060176adc52612f20209e3398a9a5a2aa1dcff11ef260b2006
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:1b5e016046d93b6a2674d63f08e0a46f8050e785bd58fd94ba7a70487efe7e2a
        - registry.redhat.io/mta/mta-analyzer-lsp-rhel9@sha256:0c8f59f35a950ea8b45f16cf71362128ccc335b58a996a099384fd737dd6ff90
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:18c611415589a093e16e9c2f2fba9f3c83d9514f79c8e4fde9704ef0679ea4d5
        - registry.redhat.io/mta/mta-operator-bundle@sha256:9eeb43af2bcab84f5261d1575f7c897903a7696dba011d256abffa1fe850eba2
        - registry.redhat.io/rhel8/postgresql-12@sha256:da619f6617d99790b4fe00fdb23ab4aea0cdb0592590162d51b3ef94aca01a7b
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:d554cc36748fc05e30eb10e6fe816ff6aab2fe07b61cc60e9d93de5c3cf17748
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
        - registry.redhat.io/mta/mta-windup-shim-rhel9@sha256:e2ea89055936d7ad229b5e890c6ba234c6cb22d8b688515ed4d6a34848efea83
        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/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:ee2c8ce2af0be097353758d9ee7eaa7e6b3fcd5f2bf5e04280e450e2b619d2d8
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:16cb28d683159ba71a5d7c233404ac1d6b7a07a374b46d24effe551a13a596c3
        - registry.redhat.io/rhel8/postgresql-15@sha256:16faf1ee82382263408f713ee4002f47ff13c82d4545e8a69d5b0ebd1d289330
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:30a3b1d5a70dec74a9253ca34f18bd8f2cdfaa68b85b0b25dc395158c2596330
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:23c97ac122eb7cd1e953df8da968da420f6db8708baf772759517aca4929748b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - 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-generic-external-provider-rhel9@sha256:4ad19b50cdd6be21e010155f2026abf0dc865e72aac1353e35bbb5eeb8320a4e
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ac38f1c3d34bc718928eb20743835c99783d846f63a3197d13839ea22f1634c8
        - registry.redhat.io/mta/mta-operator-bundle@sha256:6aef520983fe01351886e108d32b998b20e74116fc0280c754a914bfad03d0bf
        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-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/mta/mta-discovery-addon-rhel9@sha256:2dfc51d5398a90e73273b3e332f70d7ed94bac05e12b142fba22104ecc929436
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:c0643c05833dd1b70ed361bf56c46f56ed6536aac3106b92f0d85b83da1b9d15
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:70ff3b5e429a8fe0c68752ee05c47ead885b59bf9c8d7235337801270e7fc1de
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:4cde2c2df482293bd4d6b86a344336e13d2f9f81b29323698f603e656b14b190
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:b10fdc78c6f453a34a3d306313dc29fcb3152688a6a1d54cd236d00d9fab88af
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:9d6c02f6463771e747a30126de95fc0728fd95fff4ddfa6c70d828c55e0b6790
        - registry.redhat.io/rhel8/postgresql-15@sha256:dd4aec2775da1cf187c0839384cb16d69268e9781d4330874bbc865f98153a7a
        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-dotnet-external-provider-rhel9@sha256:9748d954ad8654ac203257286497ccf19cfdfa211fee40449cbe732ff48c1176
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:8ca00460b2fb64583a247f5b906c19743b7732b60ff8215f1baec12a766c61d1
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
        - registry.redhat.io/rhel8/postgresql-15@sha256:854710b428c4c1132c448cbe9ad30087a8a4b3c33ae9c0c3a4de21a15c0ae642
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ef57a58e609e244333d35681a164a1d3bf382c0eee37d33c993b018439814198
        - 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-operator-bundle@sha256:68953a2a721309fd103e09f3171d0c9d50020413631b575f1a44602a5d2ac855
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:6118c1db15667851f26eb2acf6060e045ed9065459e3e649bbdd0e2625d825bd
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:80aa13813fe121da49e166d81d09d63749393f3375c3b96d762d0b09c6685ca9
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:a93cbb575ff59bc8015602165645204b9ca56e327308b11a3d75b651701db875
        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-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:229197ca303eb3bd553accde1c29546916b128ffc7e43961b520c8e375e07c84
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:fda12c5ebf9de14d17d5d49239cee9815352f6d7e75926f7226d9f5bb0356909
        - registry.redhat.io/mta/mta-platform-addon-rhel9@sha256:a288d5a156006695854c2e76d09dfe356a31136efb72ba4f85f24940a5aac32f
        - 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-java-external-provider-rhel9@sha256:8d152829867909dfc98853a837ab50dbe4f09a331718010e15961e5468fc3db3
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:acff26b2dc0151443b592c71065c271a2f044c985f32365b093685c5e224f3c7
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c97afda6c66fd862738961abd73471f1ef4546eeb2157f13da264205d25e3455
        - registry.redhat.io/mta/mta-operator-bundle@sha256:75127a29a68c19490c96b4dde9146500c38b640f4ddc1bfcb2183372f3c4ce50
        - registry.redhat.io/mta/mta-solution-server-rhel9@sha256:08161faacb63d0842e8dc4abae5922fa84c4c10dede31bbebd2f7485884644fe
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhel8/postgresql-15@sha256:68fc74033591a7c7608adb438a81ffdf232f199adbc7c92df286097debd815d0
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:95393ff3b7f90c2077947d46e539eefa4305d01679cab40cdc27b4a4404256d9
        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-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
        - 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
        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/traefik-rhel9@sha256:7bd1c5582082949142aead1db07b45d41840c58c14ddf18b062df45283e1a316
        - registry.redhat.io/devspaces/devspaces-operator-bundle@sha256:74b83b79cba88af0545e7fb52dd70df2c1b96cf23b8963517fc779fbfe3e9aac
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:d26a9f4fd48c83bd488ebb889ccec7d65f3bd49e2c94e57c98971a3594d90612
        - registry.redhat.io/devspaces/code-sshd-rhel9@sha256:938dfb964aaae293190273034af8b09c5a007d614afa09b735756f930b34666f
        - registry.redhat.io/devspaces/dashboard-rhel9@sha256:09607fdeaf2567659a10148c50b19ac265b4a548278b800682ced9d975377cb4
        - registry.redhat.io/devspaces/pluginregistry-rhel9@sha256:572df83aa7e8ac0c198731ece8dd321bede3848fa1e6f2e3dc7bdfc5f8942759
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:af847bf3d0220392de2f8d56fc3d431add3b31986f8200a4758d287b5bd7a6fe
        - registry.redhat.io/devspaces/configbump-rhel9@sha256:7f33a59aa8d1820f8a99ed20eb4b7192c1fb57414a8bc83f5432b8ea2363bb0f
        - registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
        - registry.redhat.io/devspaces/jetbrains-ide-rhel9@sha256:b6e79f77712ede50d385d477b1d09a34ec4aee074785d385556a12a0a596e582
        - registry.redhat.io/devspaces/udi-rhel9@sha256:bb5baa05f316944ca6df56ad718c368b248e8f4b2488551549b1b13c4ed5844b
        - registry.redhat.io/devspaces/code-rhel9@sha256:7b68bf06abf4f2b948d21ffa82401b44f26965b093e4875653344ae2b7fe46c8
        - registry.redhat.io/devspaces/server-rhel9@sha256:fccbb4185e7694f8c53c994b04e140306a72ed8aa5a6befa7f0690f21e4c19dc
        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-jobs-service-ephemeral-rhel9@sha256:b9522442546f5daf0d2481794e9a565fa08c6db9b6db1f9e8c2a7824b2562e33
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel9@sha256:10503b5a1f1629df1ee61d9009e720f625c05df515078157ba5ed683c1308012
        - 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-data-index-postgresql-rhel9@sha256:071078f5f5963fb07d0b161fa925c4681045229778cc911800a54529a14b3797
        - registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel9@sha256:6818e069bf9ab89cddd5cea1c2e93c6dd1707c479cc21f116e33d8e6db345ad8
        - 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/openshift-serverless-1/logic-swf-builder-rhel9@sha256:37490d642d03a627f434d806fffae5b0e1245a4fe0d5fee6b13bfff162314af1
        - registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel9@sha256:e51b77bde368c4d34b9e1536677c1bd02182c2d6ee3a999d63f213c6853510ea
        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-operator-bundle@sha256:f2270236ca0f96bac3d2f616b349b3b5d44ffa3889fa91838508be3d9b58fe3b
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
        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/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:32cd9b5812506656ff9ff1c2c9fdacde44f179313ea2bfbbc18564fee635ca67
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        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/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: 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-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
        - registry.redhat.io/rhosdt/opentelemetry-target-allocator-rhel8@sha256:fd3fde1995d4271f5e4c36093839c369f403211b3fe9d3a4e09906efe8d000d7
        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@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        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/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
        - registry.redhat.io/edo/external-dns-rhel8@sha256:17f4127cbb9a9304769e9655c19cbea2260107c7e9371a99a9aa3e85d759c00b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:0a86a1808d9906eb57886d3d3cd5c04cf9578a80860342132d36ecfc411bf807
        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@sha256:6263a78b2a170e56dfca2173f14dbf14f0a5bddb6ea600bfdef248c7d5f20e4b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e33874a51971a90917cf437fc6cbeea1da569ba07217f66f1bba96d594f58aed
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:a614ec94c2468e34e129e9ecd4bc0d1895eb67b96e77eb5ad94cd8bd507860f5
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
        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-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        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-operator-bundle@sha256:c39816efcfdf1566636ab39ebdeb6c2c26c6d3a16a050eb2364548a555cb62b6
        - 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
        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-framework-addon-rhel9@sha256:f60071d35949e2e53cb0b8eec84f7d5c1e24bfd5f3165b34707059b61bb98cb0
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:6c369fa856f18ef60d25a57f0588ec5a0bef18d0226b957db5e5d597fa5158f7
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:d31e3e2b0126f94f12f9eb0af37c8bc08ccdeea06b61068a04d711cbfd9e3b99
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:0bb769131d07651f425b823e759746ea9d9af1e1006d610341f4e49188450f2d
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:7ca1b3ffb295e55b4b6d08ffad5d5a982c8e9d8ce7638eb956ea877580a57975
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:a74270d8ec7d1d64c86e80fd2c67d8dc8bb0a31b30b996de737491e3c7180e46
        - registry.redhat.io/rhacm2/console-rhel9@sha256:94cfe0cdb4c01ff7ad602bf0ee6af3010e5b748363845d2205070764dcbb2eb2
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:b42323be8ff41fa98332a5b2fa31af73a0da9605ff746122420ac46aa8f4a8d2
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:cce2e0c3e48140e70a389821f4238e53ea496473d3ccd74b045059bc3cfd2982
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:dd4a7678648872ea4294b867cdc7bca0ac063b81eaeac9bf5d4fddcaffb96bac
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:f99086a8e828f25d96249048905743ccd5a21f184b21fca62d01650c898a346f
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:7f86f9a33460384c60e62813e665b89bb6288aa3a4d56ca09040063d7b02b9bc
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:4628b05c002b6186d07f1bd6bd670bc2f65254168532d868282589b1da48e930
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:b297b4deda5906897b8d1949ddbabb6fb90224244ff2b6d86139110ac900fd9b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:467557f453bde3feaa0129f38c52fba00c3b98acddbf8978bf21ef13a9890fab
        - registry.redhat.io/rhel9/memcached@sha256:42a0c2506b38ce9f5ee744a299cb135781186e628fdf7c09d2d35ba3b6decef8
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:1b1f6f85af0910f1acd029f54a608b25d3a2977c3d8b323266391543324305b4
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:bf26f5a794224b5ac6b5a7c7457f345914612610d24e9af563b92eecea614eba
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:91e009061d720b1d1e5a6deafe295fa4dd7d7dd0c6fe17587639a623ca07159a
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:a72ceef5e2f992ef6d593978623be5fb15a10f1a5276a3bdba0364d26aaaa0fa
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:e20ce08100730812c47977fd754c53d3bc47ce13f57c0716b3f6487fba939c8f
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:973f4e668937fa9faee550fdf8451c74354f48756c54471f5f1a63307e4e5a66
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:4c09ad98d2cd3a41f5f437ee7023137ca57084430e00fb44e976a7a687dfadf9
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:afa4337370e8ea6da0e25d62c7197157b85281916a1fff4c881eafaf14a2c3e8
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c13557b24b0a172deac742cbc4b6dc6b09090170c0c0a4a9c0dd307a00c54661
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:ac64da0f40dc39078e7cf604293471e20ca627e90c381826f1f10136c21ac1a2
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c3d261bd2eb4842c279a0d35c754699a484ebb320617a893195088579a46fec9
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:940c0564ced75b7912d3ffc923a1f6bab9aed0f4a52962f7f894d08937b7d37e
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:7a5f323bada97dbe0ad204a64f714c0acf37e9d261776a24f0cc7e0122327354
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:2233fe74d4d9cbd226e130b314a546d5473515e0389cd19c25164c6c543aa54a
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:6cc12edafea8f130331797349cc9f1c06853cef5ee0a238d20205894a77aec96
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:0e137637b57c5c77087f3f0cf81d22c2eb9ecfd60ba96c90ff1e363d2650cf84
        - registry.redhat.io/rhel8/postgresql-16@sha256:776f420f734f9c1d6e0589fc6d9acee8f1c2bfd1f838348360bb9db584920602
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:f84cad07033b005bed36048f3e4bb00a613800cffd3d3892bfb1e3ccea2a1c58
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:d28520c44b861c75d1de8544be8b3a8659cb5695c0ea0e7b4ea3a9adfaa26748
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:c05ba064ebaad51a625361ceecf30b6d4bd28f3c5d9efb279f39c98afc050a75
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:ee59f307e468e2b7b38f7c040898d587d441f8fb3d59cb022ae23e4717739e3f
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:f6511171c82d52fef18533eee1d6511f3850c5cf4eda2bd9007a7a8642d0a1c8
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:3491ec932d90112e89f3a4cebe5bdd9ed6a7811f116df43bab8bb5f827129361
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:b8f8f931f498855461ff997f73470fd957a5f32719a62c993f07050e75d76bfe
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:a89c3f88ab17823607e3c6af022991263b418b38d667507d4c522acd590680b3
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:e53522a9ce0e3adfabdd809125a442b550c11c4c753d9665794c8ff640b86895
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:97049a14110198594e3ae815748111262359970937bcd6a83d9c98a70bbd134a
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:dec26e10f2c5c0da5a3d2be3d22255c08c55c3afcd9c9c34f53b29330f74efcb
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:393c385c8d4424539cd95b9fab090f3015e0812a3688beee83c2c515f1235f24
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:3cdc71fc6932406fb44dc0d162826713a515d7b032ddb8fec5582bfa9a9cb937
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:39b5feb4dcf91feb124adfb629c14ec729f96860c6c16e8a2c05b6b2348a6b6c
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:f930cda4750df9922781fd8fff84b9f4df219679cd2929e58961c9371dc2c5a1
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:c058a4198b256d998f85bd8ee07882f42628748d827bd978d4a70af05d411665
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:17b7618bd0d09665c97a9ad835ea6389ac4d1540f3675f6a34851916fc19b923
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:973eb3ca3da32c87ba308928a21fbd25514b2f6a6662300d4928479cb554cff3
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:57f28e416e9d84a9d690b6d262a4263d8da060a3254253c68aa7945414f15535
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:b83f150ab2dd851e3662ad01f3057482e5f454e28d04d50ce1c321efa2090f33
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:0684f07fdb2f648182a8410722156decef4ee503cb1eb66274af32d946bd8d80
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/rhel9/redis-7@sha256:b4f58ad83ab8719a2e102f38ee526546cd1d56428901afc3add45c9a0e2a2f12
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:5a86ed779e8a9f68f121029ea7fd21c37a4108ab3202b35dbb371a2b0612f215
        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/rhem/flightctl-alert-exporter-rhel9@sha256:2a1f1cf703782cc0cb07a8c6f950eadf209f47baf1186a2045210eda6b6d8246
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:490ad6fd2150a463cc7783342ad8ffdd5753af9c76cf27dd3266364439e2b6ab
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:4512e39b757445f9d3d523f121319620208bf81642f39006fe491cb37028a429
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:1621430aed061d140280a41bca527d616b4801f6dec9684792e7372a75fd778e
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:d589008f69fdc4738b2384d1098de2beeb7b7d2ee3dd64309d4f10308ab40afa
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:0e09bf9106e6937212b83c989657f8984547c81b272990cfe6b71158b8966a03
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:e27e5adc9169479aacc701677c740bb21c12a81d0df4a55442605d3dceffa91b
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:ad8ee7504e9d69edace4de3b119cdde99885677bebdbf0a6c11d3e62d92d1aec
        - registry.redhat.io/ubi9/ubi-minimal@sha256:34880b64c07f28f64d95737f82f891516de9a3b43583f39970f7bf8e4cfa48b7
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c1a264cc0484c6f58dd9915cb6575605ca3d6b1c2dc20a4841fc7afd906a8833
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:833837b3f89a4c9f8925e32c7550418169a839ce14b12915d85de6af095d5847
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:296062e27abf3c960f042757bcdcca3169d9e318627d2fcd94ff6fcfa72ae2f5
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:e25d8d0deab4139ba82e64666074e51b4d9c768f4e5e377483bf1d787613d33c
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:91f98eefba17fb0766eb3d6b94e7cd276a1ee5baf6c39c153929b4704b3c3b91
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:265e3de1cb6b823d2165a109dfb2fae4c7647ae543c920fe66d566698d851360
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:6b57bada2bce96583d5f80ae4bbcf4cdb54fcd1a214e75433e56d626e4a7f0bf
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:78c00553182db4b8d923c33afcf64617499cb5c701314a4c977673613b8fa5a6
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:de5f2b08ea7f938bdb8764bec1401d6ee55298754f91e912e14fc2faa0bf0796
        - registry.redhat.io/rhacm2/multicluster-role-assignment-rhel9@sha256:203cc1df7f09512c1578867722c61fcb90518c19d612e9a89b7b626db2805ea9
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:5bf5ff559fd9f0c06995237cc235d0939b44c023612e0179a9bc8de99cf185e5
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c5bc42e57f4bae70f1e0b2fd1de345d0f1ef7e1e41fa6cd790198bcd2023bc1a
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:cbd55d9bfd2056b3916581e51e547225b5b007c266c670844fc0881ed2cc67de
        - registry.redhat.io/rhel9/redis-7@sha256:bbce339dd580334f0e1019a31d97b053796bd16bdee79745a3102a22ce2983b0
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:b70ed3f5e36043f6050d6d71455acbf0ac9f6968a26579abbe20e47b71e91203
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:90b919807421554282a06cbb5d2e4b4b376b686a884e62566fbf257351f5a31f
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:a4bd68cf7b12b5f9b133983c988bd668f1dcddfd090b9912ee3d069d2f9d7517
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:fa26debe735df99a87997ef107ea56b7edf94168b98bd02bfe146f593c3e58c9
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:7a050603905f8cd0a5545b87475f077ff5639cff3c1c72eba0e6c9adfa1136e2
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:b541e86af7b6b458c58755f092147868164c2cbf0b239239d8331876fb6996b9
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:2b2a285276dcbce1863b2bf535042d3a4cd394f11cf73adc451226e53af54ad9
        - registry.redhat.io/rhacm2/console-rhel9@sha256:f96a68657bd4eef8c0fb1c9d86203e73fecfea62b4f87425caa1e5f65173c0b7
        - registry.redhat.io/rhel9/memcached@sha256:14568dc13790fa3d8827e3ae7ef7bae37096ef32b8a158310b3e489bca5a0ab3
        - registry.redhat.io/rhacm2/mtv-integrations-rhel9@sha256:4508924c255a6f352c3868b281c7e8eb19a6d857e32fa5f59d925875384549e7
        - registry.redhat.io/rhel8/postgresql-16@sha256:d64b9dff3ebf4a277080adf043d4ad56efc7b14a646f0ea72b911f58e28d50cf
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:c0fc3b0eeda8340f8ca684c215333c50d7896e861b6f899d4c93317c90f21d65
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:2c8f89fa9958f0422c6ce6a1acf6e6343967c78d0966937fca19e27e52e7a428
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:d8645f5266b1cadb7fc8139ae1c8e77732cbbe0642f52547df536e9fbcecc03a
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:19630eb9d520219cb515c2da23090efba4a15f3bdc6539af695c5b546c35d61e
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:4228de3d4a7d2240e13cfbb9132f75792a9c4b86e494fb3bb0ed53f6df267573
        - registry.redhat.io/rhem/flightctl-db-setup-rhel9@sha256:2aab6e480a201e202dd7f670caa27838db2c219e08c2726cbea5e7885091d639
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:eac5ade5fc49b724ef33c05c81bf960f7bec3f52faa2e44db249d05bcc45c280
        - registry.redhat.io/rhem/flightctl-alertmanager-proxy-rhel9@sha256:1d59b2cdbc4824ae2a8c1b32e7beae87331b410bb1f24c5216efd2629dd08a86
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:a7b322fe65406009776e894d98055e848abe38f3c6e4c5ec7abb40321c066ff6
        - registry.redhat.io/rhem/flightctl-userinfo-proxy-rhel9@sha256:357ce9e08c63c1f91512dcf01fc1073d3d44222ac1d97306709467282e4db9fa
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:9d486e0652b865d109c8fd7592ae96b43c1bfcda6ce154c11d6b91fbc15eb293
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:1c73ab166a99713bb9a7e17d347150213399740849524dc0a9471804c1a80d61
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:a88b2a9ec0b88483294f01848cd35548d82607c8b76ec4f24ad87271b5d7d56e
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:0ef909e3fa2bd636c2c727bb86ae86904af4eafa77ef533359c52727567e0c4e
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:3ea6921965c3f90b02a8e71287159f0771cc9fb5bbd37ab8c594df235e79d9fc
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:e1bc46429dc2da167e27400cce84af2082be150f577b37f98912371b6d684bbc
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:259bda37cfa2785051894838cf660a22564a36739eed7f25952703bf193c27fd
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:5f1fc557bef7e06ad285e94e20e4c1bb4f2b8b31c6239d195fd93ff02a530f9c
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:029a326a842d7645fc944b177234053e416517747ac6a6753675555adf2af328
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e2681bce57dc9c15701f5591532c2dfe8f19778606661339553a28dc003dbca5
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:ad124178d2f0d7e4184a1c18445a916e289629b382d0ed9fceb76ab8eeaeb6fd
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:1054b185a0118a9752c18ee6036c486f84d824366ed879d2ab4594c542219099
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:3329ee154252a8aa0f6208a59d21fd93198c01b42a1022a7310796ece8eeed0d
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:e30dc28359ddb8fe2ddaa55e43e69cafed9ffe3a64fecebcb03a850a64fe2c59
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:22a6b529dbf9aa27d15f3260bcc6acc1300bb6ac9ad60f47fcc115f24a5b832b
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:4f78bd465a4892788b85f2817c4e950d98fede462a2cc6725546bedc68683281
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:f22a55f1a6c720d83532a5af45e7aeb1593163f0e467290d2ffadbf4bb8b10cc
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:435b0f0df603380649b287ec8e0be94905501badbbaa24ae99450fb9c3f20378
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:79c843df370a7ff57d1f9fbba162c252729b7de331d88fb1679b54544cc7caac
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:34e66dd3f7dbc4760c8c6d3c9feae7bed6ff3357c8ee5a1d16e058bd496f7188
        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-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9@sha256:688729db8a70fa8e3a37a1a00f62dad124b6b6f9c90e46503873bbf40a066225
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-operator-bundle@sha256:c5f8be89116c08822005cd5026a7fa5b9c6ccf706a076ff6b0a3bd3c1991102c
        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-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-webhook-rhel9@sha256:6b23062ab592c3776ff7207ce7caed878474566033e45e377a893c4bac01de82
        - registry.redhat.io/openshift4/ose-sriov-rdma-cni-rhel9@sha256:276e01d4ce0e9407f5f67e015af36ec552f61303fbb7b2d45de5beacdc417937
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin-rhel9@sha256:6508614560de3d333fe93d7c72e6b6a1fffb4b5fd75632bf74fc686eb9deaf80
        - registry.redhat.io/openshift4/sriov-cni-rhel9@sha256:6a3b0070b671a818f094f78073279669c9646ebdc668f7099e44d007380b6060
        - registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
        - registry.redhat.io/openshift4/ose-sriov-network-operator-bundle@sha256:b85986a39227398c90a8f178da7859900b5eb09e5e77949ca698e8a675904195
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-sriov-dp-admission-controller-rhel9@sha256:f14abff38a42cb72299e58b957c6f0f09af5182208800a4a6ed55e57e4ab5f28
        - registry.redhat.io/openshift4/ose-sriov-network-metrics-exporter-rhel9@sha256:41b94f5b270e5d57b2130de47b0fa25796bfcf64c4dc771058ca0cd433404c05
        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-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:8ae52c3487c3eff996800be4321ef5cd594a6a451c2cfe9ed283c862e9fa5703
        - 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-virt-v2v-rhel10@sha256:3d927816fbd65ad819444432c6d80907143944e0fba525826edc10c8ca568849
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:8bde2126f5f8a6e1ca6b84c559c83771c8580fae0fca338219e94cba3e908e29
        - registry.redhat.io/migration-toolkit-virtualization/mtv-cli-download-rhel9@sha256:220639596f63897fecdb261d9faa7a8f6c1b1b9661c26e449336e3e19585d8f9
        - 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-controller-rhel9@sha256:2cbcb294f707d4832de3436df5cb35b442f8db69d24f3fb7c66ca7c2579e7930
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:7b5871df7274de2dd7df16f311fe97b8873b88032571d83216d6e61820aa288f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:4417efc0a042ab078138d5a83eb1b32e7f1d6ad90f69efdab40ed43c01d1fe30
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:018f9305c10388d368b8a29ef6a827494492df23a3279265ff3e41971e1dda43
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fe352650a328af67ba8cb331bafb320f0f147fe8a41782311206b8a6f0255552
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-proxy-rhel9@sha256:d990f6ddd51e468aeef329fe6c0c083ad524e6b72d8dc4ff8fcfe4cea4d16156
        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-rhv-populator-rhel8@sha256:e91c2e5473f3e24c185dd25e9843f333e6d7419d9c5f4d4396669717b5969683
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:c543dbbb66fcac02345e1d3c12333780721bf049dca0f0a27d4c55b15a5d3e14
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:4bea07e101740afc36a1617363a79b1c474efcacd584f6e475a53b3f2395a079
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:a65780c5680a6fbbd0e3d0eed423b14a9c9b3d7d17f801c1eb6eb6b777384ca5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fd6fb83bbeb9010f7e91f0afc91beac0bf38cb79c2de8f533a2bd07b1b238262
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:365115407964d182de7e7564438c6fd089e2c0bcc0f94ec48621ca0cc2bf0fe4
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:936fd68d7659683de7789fcf34d2e5873bd4bd1534c01c2d80501647f7c3c442
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:6d0aeffbccaf9df83b42c530bf82707aa7c1cc16f72a5ef30b66fbd562c01ab3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:1dd8f0f08ff1323d910fea8adfa13cef64c2fd2f01968e4d9d55f71cf42835d3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:8c05a303be5c536f4051ef291475b578d4d38ca0946fb4b4dd8bca376ef432aa
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:8337924489a1747d4bbca6dd6ac42210731cf721b549b5830846b271621e2ac1
        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-api-rhel9@sha256:8933f1a8dad97352e225e1a1f7f0edbd2820fd60ff1d0c80a49065257b6ca9f1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:80fdc43060387a455d177019de81ab274dbdf754b9ab68a61696068d9c4bfaac
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:29ce66f04b7339725d0e3dd7d4cfeca794c33e917e0deef00c44149a86a1c3b9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:49b2a58eeb994c5398f31e89abeb2959b079207de29fae876eb8ab90a2f79b95
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:931b5d94251a065c819b3e1b39a9d35e0919174b98b0ffde86dae71a15f2f1d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:930d472f486c74d36ffc3e9ed510044e15745a6350503b386f5221c82df2a7f6
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:d6ca7787981b6229eedce40893280381abfaa124dd84be3bc1fb6f043a22d2d1
        - 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-validation-rhel9@sha256:d2f7d3e51e225c045376eb435169b2a7b11e0b7de98d11e78d2a21d4540565d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:4861381a24d81f3f25153af9c066839be83cf74adf5ec900464719197611af27
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:84998b76aab53a0ca9a83a6b8baf3cb408763fba07008e3c892e2669740b481f
        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-gateway-rhel8@sha256:12f7a8e69a1369a51bbcd2b34d4ec8c66dd1fc9fb515349a04e7b202953423e3
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:8650430afd813fd749fcd80ad5f6fd0aeaab3df048e8fe34e6aa72a07ab801fc
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
        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-operator-bundle@sha256:d3a608b37aa089ea46e803696ba4957585b875f8a810f517e891f385ad105937
        - registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:ea2229948fea841343fcaa337bb7e2854acf5f563d3ffb0af8bda1c21ec2a91f
        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/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
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:3901127db6a0cb2323651885f04a603391478f58ad2d5bcaa161a9e16332288e
        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-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
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:101993f6e65d6fda8b90c583b718b720809182961f69bc777295f47e6df4d7ce
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:efc835326cd0bf95c479809f9e02c1ce921bedd3dd2a8e67605346ec623e4032
        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-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - 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-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - 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-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:e140415e0361cabeab192ba6d22634283cd47749dd25e9cee4a775d3c409cd97
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        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-rhel8-operator@sha256:d2ae3defac36f00112c6b773e13626336ba15d6f50f905ad1c33f122bfe1a6a9
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd5353bae134c8fae833257a12641b12d0f774f1565ce66f63c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:4b7796235a0a545db83570add7a675fdd9d82b17f931eb81d0cafbedb1fbf22c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        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:36ea76632f4928c6c34087d06b942c44f6d5bdd4f1828ab4e5efe36cdaf0632f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:92305253e5770277b74bea6f4bddcb918664df174ac1cf1bcfd84f261465f9a4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:023478b773a0c42739b86e822a4d435e01ef341b8136566ea52463f1b7e447ed
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7f83cabd3579472283c9a22e5722ddc58b14bc819fa9ba8d2281560920b392e8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:eacc4fb55e8c4c30894a51944960d536508001a49fda62782c6cb2ca8767961d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d71506472636d940b5dbd3e708d3e0448d777eeecfd38de61ba49e281d2979c6
        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/zero-trust-workload-identity-manager-operator-bundle@sha256:3776c07bfffdf464660750d69bf3725aa74dfc1f207ee8d1f408a8dc6c11eabb
        - 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-server-rhel9@sha256:6a14fb03c3b7256a405cff52ae0e5c7e66b1fa1a8e3a955d6670123f5534d4e4
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
        - registry.access.redhat.com/ubi9@sha256:dec374e05cc13ebbc0975c9f521f3db6942d27f8ccdf06b180160490eef8bdbc
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-oidc-discovery-provider-rhel9@sha256:70f04312f96851a37ec9bfcc605d6a7edb4c87b548621007183b7caa2333816a
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-csi-driver-rhel9@sha256:5359e8709d1b73386eddef202d59b7c511aa5366ca04f5ee707bbf760977e55d
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-agent-rhel9@sha256:54865d9de74a500528dcef5c24dfe15c0baee8df662e76459e83bf9921dfce4e
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        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-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
        - registry.redhat.io/openshift4/ose-ptp-rhel9@sha256:bb0c3bd53144f85bea73066bed2770b0fd49a9c019f56a9f6d6f92e63c8afc81
        - 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
        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/workload-availability/node-healthcheck-operator-bundle@sha256:e60e749a273732fa4f3c570ecdb250f71e747b81fe379b5ffb75282d293032a8
        - 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
        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/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:1bc7b2785534ab8d8a9a00e81cdc961838a817df7c3c5d4de527b0e5eb697d9a
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:55e3fb0c0f140fa98e90b639cb0bf933874977d5cebaef1b885150fde7dcc77a
        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/odf4/cephcsi-rhel9-operator@sha256:4a25fab343836486ac80c25d69e3d5d1223911085a5e6a7240eecaa1ed7b952d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:87990cdf6adf9a27e9bf9a4d6935d6c7328939da223bc1d145b0991b2dfea25c
        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-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: "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.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - 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
        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/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - 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
        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/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
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
        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/strimzi-operator-bundle@sha256:b9dbbce235b7a4f45f42184cf0b908e91e17094e971bc29a8710f35127a6b06f
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
        - 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
        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/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
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:b46457a0a7f63518bc12b2789f75afb0e44496e62de918b9b584129c7078de86
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:026418bae8b2d425d45b2b3481f65c241d89e25f455e3fbfcf2f79536d978bca
        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/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
        - 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
        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/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        - 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
        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/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:5d1e188d3e7b12fbb1b94ed1ac58ea059609a53243ded1bee6d1f179c2b48b4a
        - 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
        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/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.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/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
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        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/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - 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
        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/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
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        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-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - 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-operator-bundle@sha256:a7ddfc685797cc2f2d26366b6573fb46285097adaf0727198cf19e91c8dc5531
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9@sha256:2e146263311f096251110baa0a88bc49b73d76effe5d1bcc4f2b8d1230206090
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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-rhel9-operator@sha256:635869f91d1c5be205545396abf0d6d8c6b2a4efedfb2a3d10f97a9f13b936d2
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:2041de7d28a07fbc593ef975b59fb9470b5a13070d4eff9ae225c6180b3f9417
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:0d937371ad5b44f668e96d35b2fbfe189b72f5ec89ab55faea9359c92d1026ab
        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/fuse7/fuse-online-ui-rhel8@sha256:ef229a4c8851ec495f28d0eeab83b137cd02698e283f76ea1b32271b7222621b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:4f8849362e9ed6ff95d318a04e287b7ba33254a2cf7abdaf9b90cab7cbba6646
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:fcdd0292ebfc7e9edc36241f63b54a9d924a7605329c934ff2b10373af26dbbf
        - registry.redhat.io/openshift4/ose-prometheus@sha256:7f679d6c03535e300dac366f4bc6dd8d781d96dc47592836713f8bb76be36fa9
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:5048cd4fab2f98e6000bc60835c539cc40b70dbe265e927cfe185595347d8054
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:53777788253eaa1199e1854d14782619aeec0df9844d86b83742fe0005671cde
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:3f0277e2c278740307c9b2d966f539ba12317e306198cb6c4c1c52a2ad9f4f40
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:5dd1bc8f6b7e724736f4aeac86409bda3e0f64f62b736688e9572d14411232f1
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:df2d55dd8092e9e94d034166890117cf5d1cfd5cf52ef0f90cfa2374cc9e2d06
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:96810c770f75057b8bba6b78a5ba414c8289315d8af1a387f681ae5e4fb7d6dd
        - registry.redhat.io/rhel8/postgresql-12@sha256:44215c5b244b190c82d9d371a8ffd39b0c83576bd85c980cc72782a5cf9e6e1b
        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/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:ac514973ec428d815d7a248d09d27f2a84f762aedfea63b3b48de9e633267ed5
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:8b9bd777bcbd20b1a1bbbc18274a5076a67bea1f928d772cb243c57fb1da7408
        - registry.redhat.io/openshift4/ose-prometheus@sha256:400a6ee03c3200c19b9b15c5d037a849633156a62e13922fb2e62838024ae69c
        - registry.redhat.io/rhel8/postgresql-12@sha256:9248c4eaa8aeedacc1c06d7e3141ca1457147eef59e329273eb78e32fcd27e79
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:4de91e4527022e1b25df8d3835ddf778f773c20334314be9ba01a885c82287f5
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:e3a13ea8b84b9e1abd158d394e11113e5f6c04d879547fa1d3e8638f1ac979d8
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:251c29e81f8e338f980b475b841647a977807908c388f4c86e18da7bff1b198a
        - 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/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - 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-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        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/amq7/amq-broker-rhel8@sha256:75d5772c792a7c795281acec3d59e90021c109e9d7d1110868be0b882768aefb
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:c668fe1f5d25baddf627acd79df4c8d2ab8b05309d3d41784ddc0a10dd5f34ad
        - 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-server-rhel8@sha256:d6df09b15599e776b49e1d46aa01728fd02d5629cee65e77dc277c0166554e0a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:eff9f8edf28ccbadcacab2022fff9e6bc93926af97521b49e3968eaf7b6fda65
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:f65600506db985689e5b7cd8b838e646d4268a0c4e272e19d7db3577a8dd7ac4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:31258400bb37f4b8837ef294820f8a728ae83f8031d4e01ff0392690a315a30f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bafd85b0fd1256b8a60a2bb368a7e68f5dbad72718e5059a65660e01a425d8e2
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:60d5cf00411b03af3f1149a2bb3aeeb196c063d19625f876a094ae6baf46b54b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:13e9ea359cbcd3e0e94a6589b86b708dc84197f152701fd4092fffa234d11b58
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:c3e95e808eecba8ac57632452d3553509131ca783f62c68754a582cf5c55efab
        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/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - 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/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        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/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - 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: 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-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        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/devworkspace/devworkspace-project-clone-rhel9@sha256:3f0619571d6fa2259796f837ebfd0eb0fa225054ac38ed0d144245cccce51515
        - registry.redhat.io/devworkspace/devworkspace-rhel9-operator@sha256:5382d54bbd3ade51a7dda1c8a8a86aca30fb5655c61a4a4e85ecceef7e36f168
        - registry.redhat.io/ubi9/ubi-minimal@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44
        - registry.redhat.io/devworkspace/devworkspace-operator-bundle@sha256:e2b731c676f12ff02781f0ac279ce4aa3652b6e24e90eba5880579c49b737adf
        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-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - 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-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - 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-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - 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
        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/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:a4943c0563c45ceccfda0a01e26be3a01c1437c89d927714c577bf6060495958
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:fe916630003194dbcd3894dd880cad8b15a041a5e534cd8f76fde6296db00797
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:61fb98802490323bb03ff4a7060334d8fbda9e9f95cd6366b29b1b6494e4ef8b
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:7dd11d385b3d5a178566d901650ecd45e4af395faec2141d57b98af8fc1e5151
        - 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-dispatcher-rhel8@sha256:3d7801f7ffe6420595779673a170235921a9090333f8ca51d5b7f664e19c82b2
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:3b7449287adf98f0cf0a1dc74e03b69218be3bcf5538327bc34ef776cc1c69c4
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:3aab995872336e6ccb590ef6488c097cff38a91348055031145427a00aa6b732
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:de0634d14962bdb8701a8c29e80b7b70684824462bc5203e5fa7f139839cb73b
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ad399867cbb712111db6affaf5c9e3573699ed0eb0def8ce6057de02054ced4f
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:56e48afb1dcbf4e266ace944105f3c45042550d8d4a0528c982225a793d26d56
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:a59ba5aeb8e66db3d8ba9074b8e553603c59e6b0e35b57b82c4ce3de589b94cc
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:557e73127326be051aa6257e7daeb9721e2af04d2f06cc26cfc7a1073666b989
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:594c3ac24bf59802e2d3fa127e4051277bc07b6444f934f535fddeb668ccc144
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:16b39335e97bcc7c970a8ba385c61d8333e9912faaee813ccf8520d434b7bb7a
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c12c471902b8e2596588d9e553ad59b501d979dd04f301d45f7d45e794737a8c
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:f37f494956adf0892ffca34d2a4c9b839ce28dc9f2779ca32e8801fb4f0e9105
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:b780634fffe2257eb845f8c1d25498d9c654d0327c1f8841b40d90c176a2bfe0
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:4408d1fcf34c0ffe9327d4c9c0bc772afa969d831bc5de1097164d10b4e8d900
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:fd86ea2a34de43014dea3ba2b8d705a3d94347d3a24a370a8bfd032ed239dc56
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:04866e16881f64ff2b5edd379eab0731c9d66a47c25ebfe79c8d8ad33d8116e6
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c2cb80bce34a74afa76151d2b44dc25ece73fb274cdfc6fdf243b1b0cb7d989f
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:0229a0a4f026f04f8fa0a1cd8e7afea10117fe3f12e21986ec6089769c8afcaf
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:8273842d8e1714fa03c7e0809924b1ffc5ef282f79b9606bd8ac88c03e7a16bd
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:c4cff5ad5b0ac79e71a16b88640a312ab320817041317f50caf575f7e12a864e
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:397eb425f383c1273c7976bea69a603530676a00a61f461ceb5f48d67901c4cd
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:6342358e6aed2339333ebf37fc223a41a0a3e199a0e4a840f3f66e5accf8f233
        - 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-service-mesh/proxyv2-rhel8@sha256:a10e76aa15707e708f82c8d9e8b5179bf67780d99f3c3e2e99b84ae2a0aa4ecb
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:216f58dc8c8166c0c69fc0312b667daad14cf39b7aeb7bc0fe1e313376f1a5fd
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:ab90ec9b3cd9203fdcdd7c43abf95f48c9d7479a9c7af479eb1e4b6599ba9642
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:e5db11a0adb889f907cad797dad9cf2de09c433e5522fa333193cb35575802d8
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:aea5f200a845e1d4dc718d76465fdbb1eeac2b20ecae224d5d20a98214ad0357
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:10788ca67809e5a2d76d6d72df7dd64ea4407773999707a7681e0cf1b5c4695f
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:a3c5d5fd8014c432830be912aedebbc58f9c60a8cabd87ae6c42c7b8d27db8f9
        - 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-tech-preview/eventing-istio-controller-rhel8@sha256:b6ef281fca2b80d379b1e28fe3f23119df8ff765fb2cca291d514053fb512da6
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:06e9e073f092dce67d4227e282fd8eea6dc9f38b90a8d444cf448d80d027b616
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:a5154f9d13a1c373b8ba47e2bcfb9d4474fd03e08db4134c92aa4f049536f1a8
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:01c8fee92889a84a19136b0843e4fed5db31c1f2a6d997669f103373fd995e36
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:96c135ced2e3bff434addb012368d96d0778ef1d294ba507ae7e624811e20d46
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:6057a2d18406e00b0b7b1731870f707844e39193d4cce6de50137b77f17d220b
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:cd1abeb2067afa44a0f1eca301cce37307582d56c1147820ff86b9b64a40588b
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:2d3e314a6584fc6974517c1a992fb59f5133f54c2f6cfaa42f579c0d332e0300
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d03f2bf8f5e7cba47102ba26ea0149ae6719076c645d5e451058392d6044b738
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:e8c756b659f6187790bc1a5115e0f71791bff96630859a905bc5b75d14596e0e
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:1455606c8edf611d996a48e29ead53e0bb4078f55384b7689058bb25fc59fb2c
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:9a28cb1d4c4f4dd7d494829eeeb7122db2174a27747f915244672c95dc8f9d12
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:12bc62246142a605f4efed0f6bb8843aa2df7699cc1c5ab53debb94b0682e9d1
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:85a369d5696771d0932b61760336e52ae3f7c66f9a3def5312aefcac03ba516e
        - 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-receiver-rhel8@sha256:96d6f52711ba433ab2f273be8080840a88e626e989027480424d19c2fe1e9454
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ef116868c9c60e5ee246060688da49832571ff6a7901cfe143a42d048743736e
        - registry.redhat.io/ubi8/python-39@sha256:0ff58549041d32b685cc850aaa85da32d1ef73f99cd4b6e0f6882dad5f0399bf
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:92a39ca90984cebb1938447a31c9170b52994ae98f83caa860acdb2c3ebb75c7
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:124087e6402caa375b24b976c3b9fd7d53890e20ac3b0b57ba3ac646e352c7ce
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:16939b802f4c16a3d9d941917d0363325f40cdef28f6e1a982bc95401117674c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c9353a022e6f883b7c0b2d87b1bc4653172feb13806ebf0aa075d6f9f43c264e
        - 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-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:a0c5a91348ec71697747113990652feb024143fbbd0cdd67e8ae672730383a79
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:e9505aba7c44cffc3f261a5dc7617a0e54ed98e78f73ea3c9c7a508560b792ed
        - registry.redhat.io/ubi8/openjdk-17@sha256:af305e087061cbaa4107ce0b304a1ef987f6b54bae3f75bfd529cfd084cba9b5
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:4800c85e8de031bf77f6fae0e4c8e6c1a9912ccdfb77799cc2ea574c37d870ac
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:51ac9aced282f62c8fb2d3696da3696b8496d8f877e9846fe3a4a743ccd63bea
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:69ea22c646c09208ca68345d4b3508453d8c49f7f7fd9a4ff4c4cb78be7bff43
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c933641efc6bf919b1945be5a01dfb7774ae865975b1bb1f44653b3e4ca9f1f
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:66149df8549380673c24e1487d0c2c8eb638b7e502455671ca64ed6f32ff82c3
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3fb6e7626d2b0c92c2a2fef35e9b8171382b4bdf54393f2ab1281ae7ab441761
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:e97eb2bb7eb529cbfe67c14e823ffa1269d614e2d35723896e89efa12a499c6a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:53d3620bb0490d83aaf6a356bb7d3b9e7147222d1a2017f8317f05fa90cd3de9
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:3508434d5ab6b38c8a7466256f1158ebcd75e8b751afcc5255da8c21566804f0
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:21a638b481639c3c58e8b026d875917c30a5874b08fa4ceac40d447076b2bfa4
        - registry.redhat.io/ubi8/nodejs-16@sha256:8abeddc6ccfffbe313f87e5e069e18cb7047f2c7880ad63cf15bcd0a79ba71ff
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:3c8bf480dbb05e09e8d07cab12e4736643f61bf9b5d98efa6bc0557eb31887bc
        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/openshift-serverless-1/serverless-rhel8-operator@sha256:3a4e7412322755b4c278540c965a403f9e178f138bd4ad7929c1c24a8036dd14
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3b01ebdb0704dc6a1a993ac076819489495ab3fe32e3c14609e42d1358856be2
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:433821e6c7f43da5ca2e38c0550722feb179a0bab021decd9a97ad020cb78b76
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:0a2989f688b966277652957b312df736ada43fff78fd89b17f60b2137e38f115
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:9e120ecdbea54eecbc5e0412c1774f8a2ee70d7fca682ecd0757b8627f70680b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:2572d98363cca2dd94984d6cefa573c5054fc206ee70048f901ad4b846d8dd52
        - 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-serverless-1/eventing-mtchannel-broker-rhel8@sha256:9221a833ecc66fe2354aee7aaec2a2470b21e2d89cb6ed287ece32edab2a2edb
        - registry.redhat.io/ubi8/nodejs-16@sha256:f90b28179d1d5de68d42ef1a9166d70a9dfea85a1c6a4bf12dce2c59eeb2fbb1
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:cda04e3b7c2c1f37164733ad162ea0c4e52f14fdc8eb8bdef8507f0ed5454640
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:22ffe08d6a0d5461158613f2b2a2ac6936025357e282a09197a750c42b5e6922
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b37dd2cf4b459fecb6d681cac36918e486c3bd22501df50b90e20b15fe164d56
        - registry.redhat.io/ubi8/python-39@sha256:4f35cbcc6f4e108c69f7d2b70cce5afb138741b0c961506376d524e001b922f4
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:ef7d28580e75d746449a90cc0e5343ef3f4ddd75bd9fb866d97836bfbc3b314d
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:d8bdd96c6a9b31f48c961ca438c254511db785fd34bd10b98084b702baf0ebab
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c078071cd51c7fd5584039b54a2004331c05a897ee8b0689bfcb9204a8ebae80
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:3181ad775ead55f317f96466c2719b2b73c5b35d31933733da21273955d160c4
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:d2a34100f6309c3cbac7c9ccd452b7bdab2a533afc99463bfbf91e3ba2706d54
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:1ee675125f7141e91f4ee57ebce082967834bbdabe1a870c221f31aeb8750be4
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:80361e052d366ffffe9a99893cd83965bd69a9ff81d8c9262976de145bbc6184
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:3dab790fa845ed7eda088e5abdc87799da1354884a53ff1ff728739b8e278418
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:63e08279d2852d494d4f8836c54e2ce942a342f452a23ef437df9640bb2f5bc9
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:7941b421b3e18bda8c565305241621fcdf1212cbbe0dc02f38f4ab0565d2bfcb
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:486bf60d17a5d265ebd65d590a6ee1a7e13bf3953ea797b2f6c2b5910789858f
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:887480662b1bfe09626fbca8ec7c5da879d097c46dca11764ea98474ec78ab5d
        - 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-service-mesh/proxyv2-rhel8@sha256:bf693eaa845373e1a06041626a9314ec00519a6fd2437b12f7f4f3f104864039
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:df1aee67a161fa19d7f49ba56d53e0682cc1996436e985a12a2068fa419b54ea
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:de62762efa0df95ed23df56f5520490d8a231e47ce13c433c512254ceff81844
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:a82288782b61ea46d068cc09ee10608d3201c136abfc767e4d37734775101390
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:1fcecc11b55007b9c6969a24940a391968378e4102eebf7ceabbe7efda138575
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:99f5dcb92a33c047f0b68236a3a42ffaec78037dd0a5eb79d1144d62d6bfcf43
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:af5c30fc9f631d9ed110641b815315d8b4aef539f687277a3821d9939ca5dd46
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:eacdad8db61b23634c3f89bffa3f1c30ac5c7bbb5e938c6208003ff00f9595f1
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:b2480154951109a159acfb88c5472a312a515d6a6b060d832b3f7bfc16f90ac5
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:e49220eaf3143a8958f0cb1f22115b2e834fb7177755433bdc592b753a54a8ec
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:5b38e5c71e422161e40f9c37dd2f46212cb80e8e37b00247767276b957080397
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:3be4fc173b489d0beb768739f60274e07d95ffee86d70a8423e1f59678c805ea
        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/eventing-apiserver-receive-adapter-rhel8@sha256:14ca32e999767776c3e585ff5eb1aa568f7d76fd3e5ae24cae05ce7564678080
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:e55c70591c0498b6b85f0d68e304e88b830ea0b35219ba8881143555757be4b7
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:e7e6cbb46720eeca3f0f4b9829dfeeb3db373a83c89cd808b667ded4d5e139a4
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:0729de0f3f03ed220216c6cb718fc34beece0ceacd926b5e2480bdfcf44df5cd
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:2f0f84767f7d76dbbf4387ca2e272766267a2c46b5bc29f5d01f05dfa39cb944
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:9d36cde68bd822016e967148eebd2ef3e7ffab9dcdd37d17f33017e9b703d9b2
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:2a30ae808d5c32d812406ff4ac9b472e82b6bb0555e62eee4c2c6a972f8750c2
        - registry.redhat.io/ubi8/openjdk-21@sha256:bb95ea866269ac8652f666ee1587d71f4f43da33493c2be7f6a9548bcfd2407c
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:1befc9969edd2062b3df69f45aee9771b33a2659c3a14db0aaaf5c3df985af58
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1a1de677297525c0c5d317fe8a7a42684fe3f1b422a7d6bea1f70f0924653b08
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:828d31bf8a441091b8aed03da213a6b4ffae260070eff58c3319156f9bf04f5a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:4c9faea6fd162db3340aee8c11af11a08c9d79bbed104967c25df26c4933c8ae
        - registry.redhat.io/ubi8/openjdk-17@sha256:a166bd2fedb99cb62ebf4695ab46e19c7e451f887940cdf0b8245c81e403aea2
        - 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-kafka-broker-controller-rhel8@sha256:990962ad245a6d62cd11551bd4e1f8b14dc08abbebe47beddb2f4874f78d4f47
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:46b8dc1c8ea6c40401d4d1a9868ab3edbe8b9e92364a43add6722489e2eefa04
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3ffcf746df914f0949477b46f90cb2992bb63f8198d73ffd54208e7a777a9cb1
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:22b4d47725ed8cdd663ee26a03f31198fff9e71dc703532e70c42bdfb4840811
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:7c8cefd5823ad953f112b905c651f12a97491aafc008b2ba0111f0c9e83e50ae
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:3be20d63d7e82f35ac88274532d6ab7839f9a7306ca272e7d532ac03215faea9
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:9b6524f9c0e7f78e6ffb372a8587eaf5f4f1281eaf64f93dd00b63be84a4c21e
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:ab09a1710aa2331e24df9e7283f3909fdb104c1b314dea88e919d0a396f334d3
        - registry.redhat.io/ubi8/nodejs-16@sha256:69439fe83fa957089cb6fd3c1042ab71d719f81dd457a5d1fbc56c1e3ea600da
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:8033b7c1e903ba313134645c626eb3bf7ab1a0d68dc2575bc8e26884ad4f805f
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:0507ea8745267fdb53329a5274d59d23c387225d2594af51dd2603b4ad99db0f
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:b008da825ee2429f04cf39258389740c68056f82cf4bde0cbd3db850b6256885
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:25cbdf78b67e7f5a360313ccfbe3b6e2c98873b4e9ddee46c115a623e77c7abb
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:ab9a1b952e9603b4ecc5f197715a1d871abc25ebb0c5e6470d4f0b365ae94276
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:b0db9f0fc85fcdcd5da980633a3a44be2bbabae068f89d0965263de38789e812
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:70c26c7ac48d1eaaf1f95ca5c5b8ba8ee6b047a3c9c4a2c2db9c49a506bb2205
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:e70dd3a9e067075eb56e5f2772642545e308348cd49b89357c02de3979b1a5be
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:da5f813dea324ffe9679524ea7f3801536fa48f7dbbd8da56a8492b916b15fc3
        - registry.redhat.io/ubi8/python-39@sha256:8c96e8648cc6651d0cefbd20496a89f208621601f9664554d3fdeef8ced25453
        - registry.redhat.io/rhel8/buildah@sha256:55f5c7d88c77e1ab5a2ab8e877172b2b66cb196e21f10dc45148470d0ee8bbae
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:42f31eb8f12dd36541c8c0b6572d942c62e2064d5418428482d676d117a6c426
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:e1e2273fdf6384d95e1128e54c0794d7d620291a272bfb1f91e0c2723be7f1b7
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:4933b76d95d411d597d4dc460fc46c92875d28e107cda661946206a9d934b8b5
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:04e5b3882223d45a5f5383ce6481efb7b2cbedea57ebd894caafb1454ad8c09d
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:5930caa25ea875d29dff0ec5e235eaa13cb6dc98980d8045335eba1a09ae761d
        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-kafka-broker-post-install-rhel8@sha256:510e98837a549f489b2d74939f3b9c7ed90a8260ba914910f681d5c0dec7655c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:2bd241898bd54dcb248ae86470430042dc545d45e7519ed470a1a9c8c63bdc37
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:dd1f7c850f7cf2a4d70403deedd8a57ecc6e0ee5455d68fdfc49ff175fe42dde
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ccbda564735555785815f27f8f25ad9c6c27dabe4e262586fc51609331692527
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:359f8b9fbb4c3c2f79e8c70f3b50c994693b930f6f078c34c87112ebb93037e3
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:b2be693c71cfc4ce934d5b01efb863dc6e391f93a6b15fe7eeb15914063a8294
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:42d16e4d9f14a427e7a5b7e3a4ea07c258e0f2c74984baeee3b4926a8c5e2640
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b12272e1a9cb4f4bb62c4badc62b0bab110abb99484612dc781c46bfeac13cc0
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:6dbfa2573a2c78e450d3c1c04c6e7cbc50d9272233e828fe9b42e575ecf386c0
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:c3dee2598088bda36ef474f4748943a29169ed9589aeb0f77bc79a7f6bef9907
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:a0399a993155e755409355740b260d9b0019559a62be3b6253d8693a4fb59286
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:09060de091d617bd4606f7a289b4528265ae0b7a04737f383e79efd5b0d3eb79
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:e9b38f1df225238836aa829f3a2016372859fb8709cdd2b30496498669a90be1
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:28c9d05a3ba73b76f293e8f4902b574deb44f77a2bae8cf92473b8a8b10cee92
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:62bf4bee0ea17ecc60366ecc71431adc79d6f0a5b9f59489913b474128c4adb0
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c7f29554d04eb9348932953344f2ea0806d14e7704355619381bf395d993f58
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:eab4aa93b9d175045b1f01bff09681107d839285e0d633cd5146d2a2efab373c
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:9b850afa750a67120f68a49f4834ba7f105563df22cbcbc563317fe1545640d1
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:93b2f5211e79abc38bf92f0b8fb8adf046303efa2fe62c47a2fef9dfb5662f55
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:ea9e4de6228d5c3ed494c2ce5317ec290543ad40bcf7c43c2a3d6565e5d94e5d
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:f938cc534fc4b24bb9449f1e1e1e904dc588e6646c98474de4b8c81d083b4d96
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:d8ae7bc888f11121fbbba65074389b879bc22453bbabc551d79d0cee68fc33a3
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:879fca768b46676f1df89de1cdc4ded8dac310209c146c2f381ed1deb19b06be
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:05e3dd6255294b691783523f7722cfaf13aca1a1e1dab344a25eeea72aaf9f9e
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:56c6ac59a68976741d2ba676a53e59fc494d04dc44b513d72fdf8a9ad894a54d
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:672022b6f2a080483d9d6f6f4a5f42e52e522a5797105f3465731809c6cf4947
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:993597ff83a4d62a23f642fadc92f182944b953770716b73b7d19492b5a462c3
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ace72435e3e63ab21dff2345f958cf6bd171537ef2846c5d5d91cf821877140d
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:28ae309e4cf7feabaf78ac6067e1173f9f5b33a71c06d6c27cf25e01a0b1ed64
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:a8821b59d495e24598b27c6510b32ef19de2bb04ea1e568fc5afb9135d772036
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:9b94875e0e5d7abdb3b9ba7b04e217a2a9b7b4410d38d1608c86d1c21f929cc1
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:b871bd08b782c9168e9a54340efffc0b0effadde8079915b848e4eff72bb3e95
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - 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
        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-in-memory-channel-dispatcher-rhel8@sha256:b801ed7b1cb32d4a1522a959e97f280f2eff6fc92e47fea2ea022f180d37831a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:d8b94bbce98325fe8079c11c0b7a6c59bad8a7edd0532a7d27ef1632ff0de708
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:09dd94090eea9cac7a1935a6d671cb97fd9fd5714c715c9d2aed461e468ca54a
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:4b6f161c14c68536ec2c7679d30681afa9a1fa2d512548f0f591791a10a8b894
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:1c82d20ccf5eb5f8e7725839f1060f4efdfd1c1b4773a99bd905e690a6e36f38
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:095629572a40469eb651c9f81d6c10ff46254eff8b9813cadce54d6f0075c2fb
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:a9e8583c19ca3e01593f8c0e54731cb73df9b46b2ed47a2b1c711828c2295f82
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:633ea30ea3b6d5152bbdb61acb4271e5905d50fbe3c731fb4c8d8640a57f1970
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:76480201188dd142206040af845bd55b44155af92e0c5ee9bcdb8660bea0cdb8
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:0f126893074cd0398654c4018df6e882b7610e148c82a41ac814f4bf3830bf9d
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:30cb41f09067959cfe3792e070fca62820fcca4035683e5c43dd46d1cce97c01
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:f94f0e8d21a6b6341b1db00513a1a2ed5cd84fcd898a376ecde942e940a518e7
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:b9d85323e110d8eb6600223c38f9d4cbe89b50d59e03bf1e6b8808f7cef9a3a5
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:6d042c614431aa9a9e77cf8ba0064423e903f7c418e367ecc23bc02a24a796c0
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:b07010595201d7cfe0ec4f18e612d323eb38464c74eb187f275617a744d9df12
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1252960c0c0a4dc7b39090cde0fd5742a19453b1a65a08b737bc41d044a0882a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:2adb0124f04d6c4a552ade79dd1499c8ca997edb45855bf438ca8043b2709e19
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:86ffb8be1762782d643c147cefcfbc2b4723b0f97d017314a99bd2275d05a1cf
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:d40daf67b36387faa9f55e70e50d10d02accfd19470c0ac11b78bf969947fed1
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:0f8d006d0e7468783739942a1c82c7aec376c9948f23841132c8ddece8ecba06
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:d5ad3c9db7ce8e4fc950261f7c388476214a03d92e0043c7bbc4f0add2b1e69e
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:e520d1b6b87f85dfffab5e53cfb70562ab7edf450061c07609da39e3b2498fdd
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:946daeff59b41a6f8c4842f8c2668f97ff1b49e2a8afae5d64ba3baa916b1d95
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:144883b09d8a999fd4d2a109d074e44d7d8b959987512379aa71c71e4060ca28
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3d17f12cc9da578549254ba1b8934b5afc66e453b1d5d667bb90281e45b8795c
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:a5950f81cbc64d1edb64ae7f7f120c3435d36afcd14ffc34ae522af297d87e1e
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:84994eabeb7342a0771c7cb1bdd70e7ee3928dd45874eafa64cde5bb385fe964
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:45bc50a993d04b775a153e985a43d587d5455883fc4c6f31b772408297cf9040
        - 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/eventing-mtchannel-broker-rhel8@sha256:586fc8ed88f91298dbff31bc2fc4c63e0d6d9356e3358b2f853f49511c3ff9bf
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:512c4d93dc13cc53d923a6990770a7527d6fb657278e2c5d8f0ece3cd5020155
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c0376504edae12e7af6b6cce02ac53b6b374f5058ebefcbdbd32628b551bb0c4
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ef7f34a025e40f93fbd51f3a4596998a6dc508db824f137ffa1fbaf90e88f4a8
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:75228e70fb1383bbdbcc64d0cf24bf5d977c09112e3f32316824188264c3a2bc
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:33d62d13e16f47db9951ac826671f39fdc048fe7c3fb019eeb4bf9bd0f814222
        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-eventing-channel-controller-rhel8@sha256:e743dd93b7ae855825716403979db3f34cd300caad130e7d3011172b1aa4eaf7
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:477b1ac0db0abf1e16ae31bb22fdb73dd98f4dbd243fa0a7e6e94852b16a813c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:cb2ebe98481808e788ca70e7f0a9b3402818b622158f327b99a1e87c23226d2d
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:0e58edf5ee340fdfb282faeb6c9bee8cd6323e7f29a9b282dbb91c2622131a9c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:e7aa54986c3d388c1bb00828c9ccb294ca0b6c26376c7593ed6bfddda0ef4e5d
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:3130a5159adb9b4eaab75a0209d2ac639156d5e9f2346a8b2e6e0e22fad4b45f
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:d0650e4d7e72241e07a3796f20931adba231fbf5e401a45d794761f2c5afae48
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:818dc7bd69b453ba5882b4ccb82841f2d48c7552368417bac20bef1df64f52ff
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:0751b9ea7ca197480c4cbca17654d0653d1c0c760ca3c818c2a1018dc952cdc8
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:da8d975527ba100313b92e87d6d2690fddae9988aa8d82d728221295955b7224
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:6f4fa254d923f3260ab0f7d6a0b459554f83b1abfcb575a5ce2c0135fba32427
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:91456907c61952017daf07e376b565472ef86d67a2925f60e189c639ceb68595
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:8a4e5e0934197c32e0dfa1efc922d750940587fb61e0df49d476a2d035c53413
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:b2de6b658a1595084a202203c90704c3f9de018a7a904ca276112ad606e374f1
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:86386b54cc10743023884193b7d6c7159b90052bc5e4a0608a6cdfd47865c966
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:dfcd11686f161d44786a205d12f9d628d9e847d40ffdb628ec9aa4a0da0b86f0
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:f56d21089566330ecbd9aa8acf14da332d3db7360aaf6da00c9a19df83f7334c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:732827652b7a7a49181e86d561831001c28b72b7e12d5e3c1d71b2e496003229
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:020264063c50f2a4590f3d7524b271f0f77350a1f8fa3c35ca6e28f0162aa9a5
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:b66bb9531f05cd46360f787955c849208496e3e45541cb50b23bfb6b68570aa8
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:2cbe84afebac23b5397d144b4d5660af33290df451141fa3625607b6033983e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:ffaad2214fa897e89e92e574eb5cd1c671edab7f6eab87cf2ffd4ebf162b3cf4
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:b5db9a51bbb46640b23712c61e9c5a1c7bbdbcd9a53b0b92fa36b80dcaffffc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:4ca1bfaf2d7e9477583cddfa40f0b2ce59c20ff9ab20022038774dc3cc49662b
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:ab8f85bb18311b0bfee00561ef6b5d9faf810358c954ac2c6f39cf2a7739e07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:6b842b4eddfc71a2c8f6c1fcebb8f23a05f50c95be1ba2d20a1be660d3014c8e
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:86074674b7926ad9bfc95556e50820792fcbc5e11ab02879378625ffabdd1889
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:6722aecbbbefa80dfaf93143e033c562cea0982514e2eea27654dd4638e1d072
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:018459cbba2e3169bc4be6564cf3747c9cd0677445912abf237f8fe6d58e46ac
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:d68fae6fc07efa9da9af0532aadb49f897a15afcdf9a98dc7517ff5e17735454
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:9b176477be4c782ce60d81a72bacb566069a499579ce6df5a987a0841f05ad5c
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:80a155d2637f47e249fd69760b250c9b7a1eeb6781de9308b54162bb3e1bce71
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:acb28d84cf03b8551efa32646864005dc3bc9bb341a696544892dfd0c87fbda6
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:56e7a0158a713c70765ead847732db4e5f8439aacf31e9a4a22672b583028064
        - 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/serverless-kn-operator-rhel8@sha256:ab0342b325ee67cc2a7d321aa1eda9c6797dc91fe2b6f26e3cbab53fadf564c7
        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-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:e3ae1cc6012f19631c012a07b113fb015977d2ee4f9faab3207fbc2464c25aa7
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:074ebfc4494581611647ba90049655a470ca43743610a27be77db66a8633bac6
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:78fee4c596f2848487ca704da3fa1074e3c9c99b3f96f66833aeba63836d7b93
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:3b04e9d8cd4b5e43a07ece838d10478723a6c6529350f010550b4a0d1d0950d1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel8@sha256:a903480159ebf1d8652eeaa702d9885fb76bb106c02d75cec5c82c31d77d6410
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:ed60e889a677fb139f2eb4bd9ab4fda6ecc39fd050ca2b6cc1c19717e428535a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:a1834b620f875681388f0ae224dd0771773a8b61b1d8e5214a942f232854b87b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:ee6533b71cf280877c9d7489dfd821c9209c6802bed7fa3fdb4f8f00fbeacb09
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel8@sha256:27e74287774cda208f667bc2a386debe6b6255e8991abfb37c959c8525f2af53
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:d6f338e08fa937c8a4ccfec692424de4acded565f7ca3971ea507dffeb351503
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ed89e221d7a0a1dd82f2fa75e9e70bff3dddcb8979594396590bd3a15673a152
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:6210a946f373b9c36c9b31293debe6fed090008b8234c0ba17d37fa81646172e
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:f4d86b196457cdeebdc380b6f1b707c10f8dee789c7779c90ee1332e511af8c4
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:9b328fff0cc8545fb9bb1f24f11d78cfac3ee76dedc11fa4def4262d79a60e8c
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:a6f565d73375e827d830dca85838f4c4cb7f08b0c078acb0c0d567b25f0d256a
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:596a7272d6de714d7dbc6e00e9e50a2872846c269547465252d953172ef0b009
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:4344716eb2940c6a3fa9a278250f936602bb1549fece6037912837719c178b24
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:bf82b37ab8fd29c7a7cd846008a16d14b4cfdc1c09df4f731d71be3957e90123
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:187fb9d64b53c55a029ffce3c0f9e7c3304683fa8a0e832cfb7134e8a3d0c237
        - 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-client-cli-artifacts-rhel8@sha256:3fe326ad9a00b112fc888ffd345c8d5042f0a22cf32ea575931192c39ce1fece
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:4aeb68a22f63300e54391ec6b4cda8c4e665d904b5dcdd3c40155040525742a0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:631eb3a8dd9d83ceafa7d8a4da4b1e2d4f2740e6017c766828dcc7575cf1322f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:429d5d9568cca31fbe83c663276a300286af4cdbf3d35685afdbe5f6f2f8c6e0
        - 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-ekb-webhook-kafka-rhel8@sha256:3d780ad1ab280b5092b90e277485d589da2a18e8b08090af7d95aecd17af545d
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:dcfe5fbc57b9f8520adbff368c8bf29eb491c9c26d1a1737a1722cffea83eb1b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:f2d112ba9fdfccea988589b99b463c8a7157475f7a3f03678e8999e65b678cc3
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:4274004b6289fa9bea3fa6e56d64077a328a6b5e63a9f0e9c41f6d561f682bd7
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:77e4689b2ce7a713e905553e0e42b8e128045f40cb6c6d4ee082f126cbc46b00
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:0c2cdf917bbad1f5bca8a2a2ef12a96cfcd0c77c190cc35687eb57169b54ab6f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel8@sha256:afa634e029bcf79a972f49372498d44b45bcfbdb6eb28ecaf4f0b0b2a0a1824b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:c39cb88afaddc295d93a3774b8a20d001b82392df540fb502ee02316d82460a9
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:5352e4eb4e426a41521276decadf204b6d23b4762a298e4d3dc73969e3eddc68
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel8@sha256:30b8045ef5f925a36c58941386f1899bec125d005a08aeeeba5edd49b0859149
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel8@sha256:8fed5ef9a1f39a55077bb5026c8854d0ee7fc8d8ff5da277ce9c1bfc2ab2474b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel8@sha256:d9b944e64391a996104afbe8a21f66316a948e9fb7b91734e861847285be59c7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel8@sha256:51b5e18e8d4c1ca81d7c5ddfea6352a3887f757acfcc53bd2f8bd3b01337ed42
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:01d632b69b4a4112426afc4184c72eae6d8816974088e5980c9c808f0782b85c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:52ba6b1252b6f3d41e2a0b3b880cb768010ab9dd925ac34596f6adaedcbbe07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel8@sha256:3af4c48030263eb5769e5f36a6dd13fd390d8566efaab37532f39e1df1c95c67
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:82e69a1890042f5636ac7bb645b1aaeaba0a4894851eccc1fa1c63296918e31a
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:f3d87a7fa5b5f2818effcac3304bd56eddcdb0db97a18ac0f35a06fc7e223e7d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:c7c2e738e0d9da1d2d1993f68938e72c4709b1f28a54fa92224ef6a0e456b0aa
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel8@sha256:88323da16360981f27b8e4686fbbb64053e4e0e3c79c65d695edb317b334e1e0
        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-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - 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-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - 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/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - 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/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - 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.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - 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-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        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:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:dd84cb2dfdecd4f5a3fc50a9e167ea6970d1d52d8c7427c201a74a76e151d430
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b3f83d5f406fd902bd9c6773f14c07649474edc4ca40bbcf75142b316a094247
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:81a004dc9d33eec151ae38f2767fe264a590710d2c3a60e934d440587f9980c4
        - registry.redhat.io/amq7/amq-broker-rhel9-operator@sha256:6fb2c32028429d50b8ffb26b63b6f9b055c9c3fedb479dde6f7d8dab9465922b
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:7a9c3e61345a8ab7c6f91701babca4a566beeb959bdd6008ea9b75df79a3b532
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:ff80e0a7accda6825bf834d9aec27f48205dd6329991890dd017b4d21d0da5c8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:80bca92852d08a7657fb090fe44bfda10baf231c31139a24edec83f542f36232
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:54004a7076fff8787f14e238a7c2dd21884a882097fb474412d96b0138ca9249
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:755d0f7421efba76f52818bb3a8667cd7d2dcff2c7054dac1a4637b74ecac51d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel9-operator-bundle@sha256:7d3c6e3137aae3a0f612731fb8e2d44fa6c7f708fea2b6382ffee0a4d1f15b3e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:c8ccf2fb03e97fcedc3299ada2f63f47beaa7643df4b201fcb30899f923436b9
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:f92b41ededb92e88d439caf1fbeb9322354da4b7a298bb4ae6873871a1e3fcad
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        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-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
    - 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-operator-bundle@sha256:1696b6f86abea123341f703981c26d79365c8a0c046d7add6970fb7b1848ace2
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:8c5c8c530c63bf9eaf4909b9e6b7d234a0ff266f31030b60869c4af1b2167b73
        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-rhel9@sha256:293e3169bad9ed1739b0750d13a7e4572594c2f5eb2eca6cea04b588ed06029e
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:905406a14759d960b41f56dbb30170961fafc7b59421efb6c2bba5c6f91a9f39
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
        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-web-executor-container-rhel8@sha256:2f0622774367f33efc321926196681322ab1535144e6a0785608c8050fc59f2e
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/mtr/mtr-operator-bundle@sha256:190a6fa2a6a9b6b182cdf9cab18814d05c203b54ca18dc533e553fa5dcca779e
        - registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
        - registry.redhat.io/mtr/mtr-web-container-rhel8@sha256:cb88a5453b506ca70563537ec6db2f44ff8cb4050c9652ec86eb5128aa313003
        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/odf-cosi-sidecar-rhel9@sha256:f6f1d8f6d783c81b932280cb8d4923ba4b84aefa748d26351d6392c8673d10ee
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:74e59db870df08fcc30a6869451af3a6f5112777ef25bd7de887984ce015bc5c
        - 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
        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/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
        - 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
        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/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        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/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        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-operator-bundle@sha256:006edc597eec839f960bfd191b75217fc8c6bfaea9d1694e7ac9fa34266f9b4f
        - registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:767682dd3bd65651a8204c9fb732b9c48b99127189992b43abc6ecce027f4589
        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/virt-exportproxy-rhel9@sha256:6c5f2307fee82aa4c09be8250d52f2b5afdcddea6558879f161df0e184df9146
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:d3036a5f83bd488ac4d641c17cbad9f7621943edc2dd86be5b0b6119019c9d52
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:34df9b10d96231666cb0bff52ffe2a2a07c38b73e20472bcd005f5961ae3b7a6
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:56f2401c00e5b6f4ff7262725ddce0b4cd431a3eb7e393385b6b9db8e3506b91
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:2979769ff3b5d494633f221190a9520503a1526dfcdaf930f0d7526e370ea473
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:357057fb344983d0cc0b29ccbc8be12deaa3ca506023064988cfccb41557a645
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:d1d96c13e31b52fd4d0cfa6c463752b496d4561ca1d073ca7d05095221922d60
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:3cbace21d5a03b007e4fadebbb584d7c5daff150fb974707b2d8d7a2caa33159
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:829714c6d8ae2160e3b3e4e4680e637d3c5abaad985ad6a166a80cef9605c75e
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:e4aece12cd6900642c54597bb774baa476c0d3c09b8f94cd6cb8f30d21204010
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:c4a38bcc6094b76a0f082d20e5dff3f2912da442930804c4c42c3018aff2709c
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:e5fbde9eca277212206e4e1b619ea1809e7e6506dd6ea86b6d34a75f128060fa
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:600ca5470697e6dc1d8dd51b905943773b8bb602d8f167dbbfe4328168853514
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:d198956224d3333bae0b872616faa2affd98947e19ff4da78e3ec28cd632119e
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:abfa2a92650be61f1785643bcd051dfc26c186974430e2c7aaf722665a057e93
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:8d45195acdeb8aa507ce9d6a89de4197f2564f9f1daae19fbd771090586d2ad3
        - 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/virt-cdi-uploadproxy-rhel9@sha256:26b86907ad25fe1bddfc69c1227e403879fffd1495c52c9d833ac2ae44ebcb75
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:230ccf9d52838aef4c236d51aef22f71ce0c548f56b384a7361921492c68abdc
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:943018739e3db1763c3184b460dbc409e058abbac76d57b9927faad317be85e4
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:c2b07b95fd47a5d968e809303d9ab79286dcde62bf173adc5717586ec182c0fa
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:28106cbd0375054cf0d06f3fd55d3add39fc26dde9a35a22cb6a95cd0fe59003
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:7d9eb580f06b9077c45bb6a42287882e0ead5b4eead67e05a77f0d3345b5256f
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:04096d91f02fae6188a085e456227a0bb52e52f07f966bfc883c63e7f50d6870
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:376d3b416da5afaab1b525d9cbc508ed10e1d9adcd29d0d05e2b51ccefc5ef73
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:6db561d095d29d656abba9713392fd94cdf031e7ecaf1c9df5b8460c45730df8
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:62b720486b6e60adb9aa86b83117d48197abdcd8e3aef972ec2213b3fbec98b0
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:8fde93d45a81ecdee95649a281f80a9b2a0a71952771a43f0555cb97ef7d1605
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:74180dbda759a0f30b9c9321585ced206afea318ddbcbb362bbb61f1b6978597
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:edeb0af7736a94afa9ada1ba7be1254264754a0df41e761f6d53463b5f07fcf5
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:8e6a791528a0b8809d38ce153e80e9e1f19c58a2415777e617631ea7876d2b7a
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:c451d67a6a1154c3f31dee5aa573b87484becc3527ed36a1c553a1013184fcf9
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:9997909581c8cd9150f4581a3aec964691dbbfd3b92a06679b0e795830599052
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:d6c330e2a2b56fa9e75f57c3f75e95096862b6c8ca31069de8f41f64e8481e26
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:c2f128f9001c0c67619386e1a860663cfa8b6b1f790af1ef00670d76c686c4e5
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:ec6699bb6f648cd70065a3849c6bf3a57722d0f6fc87c1a8b582e18bb9e4ebce
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:53daad8fa0b71bf5e362ee44c50b0e70cd976b6b30d425d5e29088fb8163f8fc
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:3857e1d21bcb5fe82ef0d8efa8969b90e150c2659fd115b2e357b2c137b19a4c
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:cea5e74574f8d3ac40cf63b4084ad107d4efff5f5f6c87f1dd655109b5bb0c8a
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:ef3b5088f20b1e0b101f22d307876b87fa9ce0b3248b26e0e1d4e003cd89256b
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:6ea1f813aa546acc9887f809207a7fd2a5d913ae0f42d944d7923620a4fe877c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:dd0f81a803da2b2c520f922039045e2db9b96c61cea26d60eda9c7c9626bc449
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:45a57cc3913b84e841be83daabdc5f5985d55075c0d371af9daffca1152ac0ad
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:b44ea7853c23ab1320f68f8693defb47e89dba2f7301ad46f5e28d71f1fc99c9
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:1ec50edc886c4fcd04bdc9de3e9880e90824741f8d6ae384f69f579fa6ae2c50
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:96bd1b744a5e034cb3831c2c9c45b0ec65130f1ba124946f74633a2795f23fe8
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:8c16cfd74922b28b0adeafd422b7b2dc3896c35d7000c9d5e57be0f566058f78
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:a62635a6a458fb26f702fe77afb8976e23e37ee069bfd37f4c7029841ece8d63
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:34982a06432fbee263892b58d24409e3f2119f649abd510609c8fbc63f7c4953
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:167957fc864966c356d70a6c333b03404c8234e4ece8e8abc6169de86b409983
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:6611d88a0c69650f1c2c9b946ed6df976b3312226ecfac1800bdd4e187ac9629
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:cb3d2fee13d9a82ad852495da7d9a2cf1b003edd39bf1edc34096bbd9005d28b
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:9eb617c02a50e52ff412c97fe2ece275d9a682686bbb127a3a6ce51f6864d6b4
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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/cnv-containernetworking-plugins-rhel9@sha256:fbec311480fc899bada5159771ce6d33ff8adbdd2a2c53e1f08e2bca75b2abac
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:9a2691eafd72990f03f4600e0fac40e1572479493723387c159f66261a85eeab
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:2279ab798e8c18b13c87cbce75e6018a9b5be872666c9a19b4929837ca7784d2
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:65ef0b5b5f2be5c829f9d25a9ef5a0e54505051d40b6233df4353e7761bd2909
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:9f081d7b24658145adb4ba5ed494091be3968cb4c8305f2e197a49f6d61226a3
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:c91fc0b7b07743c58c449155d1fcc43844e0f1c909b058fd1126674978afe5f4
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:e38fa87ca295c7f750e207b5c29ea9e4c784e51a2e9a365719cd6e45d55642e6
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:fad86adf9d9e682e9aff8764c776d2650e78b0d7101fd6c2804a4c445a9daebd
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:95f0ee74ce70b75c23ffba8d400db7018bb5d8b002ffa20bc4326cadb1aa1434
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:dc021c2d95737add38dbe43a961e8ae2ae8245df3cbcf46727b3ad89d8e27af1
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:aa1d79d10ab0f88f472eace2961cc0b83963b13517f636b4db74f9636fbf993d
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:ad84fd70798dab76dd65da6a0e54d34d1b233f042df97b0c2894ce5cba641e03
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:2a4fa36bccbd1750c7ba21d8774592205558eefa10c4a59807d0d7fb255c4d7d
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:508963662b9172f0d5e3d16b91a3a359c45ce050bdb8e5d0ddb99fdc2b44b260
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:80355df8da40dd604f65b897b4987b64c1c7aca77811a4f013659e0e4abde531
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:6abf158997ac1207a2ae7d0589d830a14e5724905c98e84b32a3b41882211e04
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:3138ad3a4471ca69be37fbe50a96be4b89e120de0e2808067ca99ff576f16256
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:fb61c086221a580b2a084611d0163635eda53d584c390f8df52a730e22925922
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:665bd5625630898222a3ecf02244ce31f38f310c87f5f6529ab53ca22ecb5237
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:a1b60487bef71216a67daacfeaa357de08f94294be66187cb219d06645076616
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:ea07bb35db9c047015fb6292608d28572fed17b3d190bb2cb3127e63404be654
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:c370e913c758e0a896a1bf47ceec0a44ae3019232f33ea6994b90ed7f4567c65
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:3dcd47d947a86c87d35dcb26da02dda2b9478bcaafe9c809db76707508353570
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:84d3534ff8027475d41f6dee3c827640905b98dc5251c6a31abad5c7d4cdb2dc
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:22790edf1eea155cf40943609499deb577283bdee8d8cf3a5bde67c7806f152c
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:4cf3eca6e1f958a9b3c14cdb6be536a2b8f11491b475b23dbfee4eee8de8a60d
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:63f4d29d6724055bc857b9113c7ee2cc686f0a4c70dc0600b24b6a51d03b1ec4
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:8870efa7ee50541cdef7a9058cda0030e66e31eeee26209443de888aa472fd40
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - 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/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:18b1188326dc55855da1afe01659fa0ea06fc9f0d5c8a2154f2aedcf49a204dc
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:554c6882d9c1320274c17336f5efd80a615b5a6b97a4383f452813e080ccd9da
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:1fb533343f9eb45062f1817e8be3e46c315887fc24d146fce4d83b53fcdbd6c6
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:591720c7e2301931e160cf1280c6b55bba9de1fe6a38545de09e05be38c50fc1
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:899349fd7dde3ace0171661f61a34d0e794750f16f0e59003073239d109c4ac8
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:6644a1c779f055ced237d73fa5a92abb0b61119983d1dc966b5e5592e58839f0
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:89beb3c6acc06cf04d97ffa7f1791ab380f873b692e5e694b476558693590759
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:2bc541d27e9be750363c3706fd0692bdaa5b16b69efa842be7f16046fec2b8a0
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:7da428ce43d513b042b5f6b58e58b134937071df97f769d8e191ac178a34d5d9
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:1823a4c581900087411be32c46297e8224087ebad0c10adafb1e48fc9fb5af8f
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:14eb7f410c4e2fbd7416a3aedbfba5f45e401e3bd9d4f49b68bbb3bbc47ba59f
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:80192f34263a9a9a8ef9812f7b8dc37090ace003e257e74db58902f4a1299887
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:013b3f599fd23278b88ec362c9b89ca3df3f5820a9820bc6ceeeff76f1ec1a2a
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:9451fbcaaf9b486168195661f3b370a34656bbe856133644cec7364fb0f9327a
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:ae01e86a9f67be13e9072b9491b86c6fb1682f153dadaf86afdd8269c04e8e58
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:bf5236671c5f149cb69c58acc3204a3dbd5531022342b3ab4e70908c46ed75d6
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:2efdb15604ea5ee3b71dda28c796ed67651e7d3a2811739542f702c285e8873d
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:13475ebdb09e49a5f33cb255491226415752551adbf19f1f11555ade84832490
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:6473ce9becf07dac29d2bb597fb1c9088475f2ce3d71c635ac41b13ee6d620c5
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:93d4db5d1afac1364915dc2284c6f58a0d4e1f9cd8395d84177dee0568f8fae5
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:b648126d95b88bf7cd346dd2a112fb77e2686d899ea51fe1090a510bc2ec8f24
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:5bc8eba190a09b03141b866c50c7ee244631e2d7e9fd76c6fb3bdce933b20f9c
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:304b1845e9b7bf2b443b6c889e2e37e446908f02d70f9733e4206f9799e9e963
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:244f5df211adf0631afdd76786d98b2bc01bff8ac11d1d47d87e3022d999ec47
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:ed454addfc02bdde63bfa619f53d036128d107cc1cff3f595819521be1671e59
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:4d5457ce137f9984f3a8227be66b51df7ca24d2cee950c7a62fe07e4da8c957a
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:89a4a5077410687afaeceb73af8c43d6330661ceb34225c72a7a18785321a6e1
        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-rhel9@sha256:104e8a00fea252ffeb7fbef678be0b2f57c6e0cdde8dcae0134c2a4d681cb63b
        - registry.redhat.io/job-set/jobset-operator-bundle@sha256:1f8fd0e1c6636b04dcc7cf4cf27d33edd70c31db5b6c5fc305e415df8a5b10d5
        - registry.redhat.io/job-set/jobset-rhel9-operator@sha256:e5b874a603a2f6cb97b4312ea2b00275cc4304773bcd9fca0782f1335576cd0b
        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/openshift-serverless-1/logic-operator-bundle@sha256:5fff2717f7b08df2c90a2be7bfb36c27e13be188d23546497ed9ce266f1c03f4
        - registry.redhat.io/openshift-serverless-1/logic-rhel8-operator@sha256:8d3682448ebdac3aeabb2d23842b7e67a252b95f959c408af805037f9728fd3c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        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/cincinnati-operator-bundle@sha256:50e9c88ca31182c54f9c4bc6682642a5115fa280044e6c125f99626c69d999ad
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8-operator@sha256:759f4de107a5b429933c5e44046ffb4ed75c674aea75440513a6df8fa93a83a3
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8@sha256:a9468a662babb272917df92bc9c827535b4b37883edb440b6d2d7c32ffb2145e
        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/kubernetes-nmstate-operator-bundle@sha256:c6d75810e8565ff5ec92b0429eb2936a381b88d3ba33d918c0b0e39399958c0c
        - registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
        - 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
        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/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:4ba07c476202c61c9a2b59414afd6113a55c5c8d73cc4d56281943c81f73fe6b
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:3e5d34d689309eaa346b27ed9f0f517199d82eb9410d1bcc5e99dea367e9e242
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:012b24f6713f98358ac044a8b5936502af22370a032cb7fbf17edacbc5e165b7
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:7cf8ca0c015621c90d8fc62629ef8711571d5292e2d5ae12a0f541cdd9bd49b9
        - registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:d1e5461db8983a13f98259152dc3cfa2aa677c29f799104190e5cefa83cf97b5
        - registry.redhat.io/openshift4/ose-cli@sha256:310339cb93bca052f20d897f3fabdd608983e910af19ec18d1c1c67833ee3cb7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:3a901b54a9d35d38b5aca275df2160e3190a874e139fcb606b9969b38284b3dc
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:3fbef82d1c5da8da1606d1a2d5dcfd20000da574737eb32b772d4f0123b179cb
        - registry.redhat.io/rhpam-7/rhpam-operator-bundle@sha256:b18c746b4270819be88665dedae34c7635df44d492e989f433515dee0d992384
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:a3e44e81b1fe4bcbd3c1e1d7dcbd6c4fc24d9eb2458d503675d431b973b9d080
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:4edac282119898ab1395030eecaee584990064e88fc8e65fb999f19ea2ef3f8b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:dc24aa382e02c4ac058d4b824a21f0e90a6259d6d817d0341b2a41809b5daa78
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef9165b4497da980bd33c935a638179f7e1969dc227668b21cb79b94ecd10e51
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:a94739f0e52ae43bd73f3218482daf0199b6eda367a2e510ecb7b64fb7ba9942
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:228c6ab5b83e215a98f6eb76250feb2ae3096fd21398c44e5b2701257c9c3493
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:bd5c6586b4859dec23ad9530ee98bab33497ab251d544f863fc0af01cbd45101
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:32912270eba0f2464da88f315bde8bf1ef5bbded814db156811d7a415a458f86
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:4ee8b93e87cb8012b46324a35e3806c6f7a72d6b27292cf5180dcf0f5da6810f
        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/rhel8/redis-5@sha256:8d7e66927ce4b3050ca15ab4df4dbaeb593cb855e16fb0a6f5dde950e9db7db9
        - registry.redhat.io/quay/clair-rhel8@sha256:af5e2fd1543365b365b1a6cce00b86e44fe5e66cde6491e9b113324c21f629c8
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:0e6bef51caf479074925115fa11621c41bcada375cc1925d0511a73084b93543
        - 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
        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-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
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7fe408a1e428b2d0660cb578c1dcd4b961f838e37166fe7b21b2bed70d288594
        - registry.redhat.io/quay/quay-operator-bundle@sha256:722cf3c05eb5663a737cb1385b971b6d1f0c8b2595d5ac425f7b100c25e2fd26
        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-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:907dd22eb16925813711a70a3d0df30963a3d1d0c060ca9b4f071ec101f14b87
        - registry.redhat.io/quay/quay-operator-bundle@sha256:91ce9e64184afb90b00360c64f5ba37d30130ab0344b2439b93db15f2b35b74d
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/clair-rhel8@sha256:3967b2027cc8ee045da7c6a214c959f8651fb873bd60b81cd78f167e57ba95a5
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:56c4668b72768c2b7017215f547039b4783498efd89d17dc3fdc7d0444cc8ad9
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
        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/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:3746677ef1cb0ddd4f237ab598b14cf0bc76dcce080ffde127b5bba87ffe6693
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:11b8c9d64c42f0f0c7b2df491bba859d0410666a8ef1d2fd41eb77e4ad9d2dc8
        - 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
        - registry.redhat.io/rhel8/postgresql-13@sha256:35d86936c539007a78a89869a14b87b76788fe117df442a670f63936b978ed5b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
        - registry.redhat.io/quay/quay-rhel8@sha256:7230fa1d4970e877cb6de8716e99a9bd43302c0ff23b4501f2aa806a8d496d9b
        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/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:206d249da9c156fc7b76eacc40759b3accb82dce85aa2bb2bbd7a33af52ee104
        - 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-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-rhel8@sha256:1076d78eba4bef63cf45ab04c1dff52f0407ab9e16fb4729bee7c1ab642f59b7
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:b3a950f2c8a123b9bcba240db407608dab6a4fb00cb9fcc6e083e07144928390
        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/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/clair-rhel8@sha256:3af5c1b75dedb37fb8c7cc3500882f7145314d44735b0957dad7d588a0cbf825
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:92ffbfe625489fe0b00e32a144f76935a4c36d1835af42d9b45bc3904760b085
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:b3f7fa8d48a772171dfb9eb893bc8e51985147c7f44fb8b1351325dbbf59810a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3bda08789b2ba41154d080a5f013ee0e2406d60f8414e63be451a6439555cc1
        - registry.redhat.io/quay/quay-rhel8@sha256:f112ecb55942c8785c4aa20162b74bac904634a87bdc8b9755873ef19eccd6df
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        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-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-rhel8@sha256:33e984892650d315065313fcb5f8808e145aadec5a287219c7031d85b713235e
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:43ef8adddbf9b007b6e2396f53bd6a5475150d28c2f4254f031a0fe6c7de5826
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f16c0a135dd7380e2a489f963b38bd76a63a973f482d06ece8d3656aff223703
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:a12a0918f6dea114b0aae231d7119a4acfd0cd297074d895f4ecf190d2aec43a
        - registry.redhat.io/quay/clair-rhel8@sha256:e11e8a819d17bd14c67f093b5303b4958855e731f89ce67dcca70fcb7b77f45a
        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/clair-rhel8@sha256:861be31d30142bae125cd059bb716d79b28694e9c4336333c68adf4a3823b61d
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:873a3daf1dadf2438eb96e151072326c31ba34ed48cac041614b604413d5f8e7
        - registry.redhat.io/quay/quay-rhel8@sha256:aa8c9f7b6ce57441ca1fe9dbaaefaf2bb83fd44aa367647b663bb822bf890362
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:956f3110f944d880bc27bb6df9472d0804cd75f5dcf4ed11bcf721e9d1d4542b
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b499eebed32c0261db414e307f96f8aef9e743035544c80c048526e7ba4fbdc2
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        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/redis-6@sha256:686620b9acef6dfc3fc5e8221ca4d7a00c1fb102319352e7871fb9bc0ea127e3
        - registry.redhat.io/quay/quay-builder-rhel9@sha256:d3803200676de5a10f81539d3cb65e3d1cfad4fdfe7171284cab758bfc1bdd6a
        - registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
        - registry.redhat.io/quay/quay-rhel9@sha256:c855425208f7f33a550d216328965fdcb3abebc3ee28fc0854bf62c58ce07266
        - registry.redhat.io/quay/quay-operator-bundle@sha256:000771d05a6151960a085bce375f090d706c48328009000437dbc5a8711c9ac8
        - registry.redhat.io/rhel9/postgresql-13@sha256:5105fc7494c8e9886204951ea6eed0a04dcc638ea65a2e1c15df5ebf99aae356
        - registry.redhat.io/quay/clair-rhel9@sha256:b9a5096fef74999c34dfb721ca1b5e47623cfa21b48213f60a5b889894d4874e
        - registry.redhat.io/rhel8/postgresql-13@sha256:3e3e87ba0081e6f2d00b7a0f44f1b7fe6465c3c8176503c5f967237a949fd9d7
        - registry.redhat.io/rhel9/postgresql-15@sha256:90ec347a35ab8a5d530c8d09f5347b13cc71df04f3b994bfa8b1a409b1171d59
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:adc9eb1500491144a259fd95c14237be15fa92478523bf33769a708b301d66cb
        - registry.redhat.io/rhel8/postgresql-10@sha256:0b9dcbac4969cc755505ee152369f23ac891a0e4030e9e2519cae25e32416500
        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/clair-rhel8@sha256:cbafddd1eb50c1c0f9159ffafd86f44a8c0b976194903c96c6f144bfe62e749d
        - 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
        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/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
        - 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
        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-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
        - registry.redhat.io/quay/quay-operator-bundle@sha256:53fcddadaa31a5f7d74c38f0bbd0d80b4c09796a580ef8494f60ff82fb6fe6c1
        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/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/clair-rhel8@sha256:f4bb5da4f6ea525d620c94180548603e1686de8b85b9c92c0a8c59840a1f69da
        - registry.redhat.io/quay/quay-rhel8@sha256:f713bd016f375427a0a348e58639622cf21560c05d1b82653f2c47493fcba186
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:571d88c0dc93c9194a5242b02101b7d77871d2d9496307df7dcb9dac971ab444
        - registry.redhat.io/quay/quay-operator-bundle@sha256:3c1f25918b505ec71eaf93d2a0b963d209e36d847e7fc48469f9d40b534344ae
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:94f7e4f69cf8bad09b00ffb85bcf621f87df000e8a6077ba49fca88997a163fa
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        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-rhel9@sha256:4185a2d8f361b3bafbf677e35229c2b58245d3a52dae44d67b5990b62ceffb94
        - registry.redhat.io/cli-manager/cli-manager-operator-bundle@sha256:f84f5609ed0c329c810bb85d66f24e2be6b0ae421c9870048d6af6079f01abed
        - registry.redhat.io/cli-manager/cli-manager-rhel9-operator@sha256:e68b034798ebb1cfa7e17c055dbeec8c8aa46afa7d1291a7a2dbecbb691f71ba
        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/workload-availability/self-node-remediation-operator-bundle@sha256:3bf8ef27f9a7f50c7e9fa066cabe8927efc8a3a890783bd9b60156b4ef417a77
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
        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-operator-bundle@sha256:2f72205cf81cd26e0c4d7b159e72f567e84e69596aaff92bbf52bdfd2d7b9dd4
        - registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
        - registry.redhat.io/build-of-trustee/trustee-rhel9@sha256:da30d5c78cba2fa4b595487c500ffefededea4ff2f4e9ee4d8bdb7b13d8aba40
        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-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:29690144667b3753a7e76095e136d6fc42325270e7b9f22f97dfd411439e9f54
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:96b77663961daea3a336b97e34e9412281bfb2727854dc970a69edd029b9af85
        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-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:5170255ecd45b9bb7a70abec0f6eeb0518bbc2871de759e468dd61a80261c0ad
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:e44078fc6073a79168ed52922b370773b451d69bf335aeb91d26a1462df21a9b
        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-rhel9-operator@sha256:49726cb2702441305e8047b24054575170fb595cfe5ebf815cdbfdaa957b02f4
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:9a3f5b6c403fb84c9cb93c9d7cf902c80990196983607c8ca568d4b558938e17
        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-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:68fe21212c54efd1c7a1e6f68e554722ac7cb8ffc3f5d48d608ebcc0ac8be921
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:60ee347425c6cfb36f0e1e834b33cbb3d77aa2d6c89ac513216d0b9fc55d4b52
        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-rhel9@sha256:9b888c75a1ddf274b1f0aa053ddbbc9acc3270417712456ffa29ef81a883b38a
        - registry.redhat.io/oadp/oadp-operator-bundle@sha256:d998d58f1170bc7ee9d9c81f4bbba50ac1f65e8fe60fe81cd74166beff6f93c4
        - registry.redhat.io/oadp/oadp-velero-rhel9@sha256:dd5897b1579599cfa8d8a03a1c8d3cf68e3927c4ba5dee4e33c2a2d4c9e6ed89
        - registry.redhat.io/oadp/oadp-velero-plugin-for-microsoft-azure-rhel9@sha256:c2dabbda67d47c43c323d7790da7e091fb9715d2e166ebfc14e2e026745d4b6f
        - registry.redhat.io/oadp/oadp-hypershift-velero-plugin-rhel9@sha256:f8798364f94bb1bf4db264b0439c5a280b40cafa408c47b4160d9cc9c5d87e53
        - registry.redhat.io/oadp/oadp-kubevirt-velero-plugin-rhel9@sha256:77d6057b1783872ec65d7d6a88d8a1212c38aacc982c7efd46ed2eb77b5e9e70
        - 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-velero-plugin-for-gcp-rhel9@sha256:f1ebdaac4359d96d524ac1bf36f5b0b3bcf7d1bbb7299bf8d6daa55dc2bd2c17
        - registry.redhat.io/oadp/oadp-velero-plugin-for-legacy-aws-rhel9@sha256:50262b769de92249219dddb3a1ffc37cf187cd8e76a1f912459e8f1bb86f4c84
        - registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
        - registry.redhat.io/oadp/oadp-non-admin-rhel9@sha256:71fe65fdaf632c8f51db7c5ca1692f0fec79304e68114a91541b38f4207e70db
        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-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:246712ce23cdd590ff83d84e9800b4ed761886ed5bab9f9cda4125a5d930e7e5
        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-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:56db2fd54dbe982dde6a4558b664b19a676a8ac99bfbc8082d097cd6d71a03ea
        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-bundle@sha256:c0a8c5f5454426844c43f8732ed512ab30b5d4bd3e799fa3f133670d0ea431d5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
        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-bundle@sha256:46f8c0ea6e383b742ab9cdaed1c8f624c2cf405bb1ce39c0ea6977940d52de07
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
        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-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e4ea95a86e77aa64da0b1800f00c2e0e598776cde7cfc7bb9941a60bac207ed9
        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-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:aca3d91b7b9f8c1e8a1e0d045c42ba5f27444e0c1c0bc4a87c697b428c2fff78
        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-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:74f0cf91e2feb60fe794f71b9f56fa8afc60e53379a0aef104701dd6692272e5
        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-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        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-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        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-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: 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/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - 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-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - 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-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - 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/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
        - 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
        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-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
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:2d9da26bac816af608979a034a8cdc24b51e04f0807e177fc114f55c0e633650
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        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/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
        - 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
        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/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
        - 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
        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/rh-acs/scanner@sha256:2860ed271da6064149bb53568c5ad60e129918d55a2f244f9ade4a0bea4c4933
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:ad88773ab141f45fe24c61e83ec736aab27f652fb82ca2a85fee6f885568c5b9
        - 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
        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-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0bb76363a3a25916dd4493e177e9b2d36eac9633473b07fe0fffb853fd072da3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9b9b9146d9683d6da0ff2abbc8ea82b96d945b7a8c3740d72d8c018fb2b04fba
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:f0d2f5f11c2a96d34d6b4baf249cbf821fe064eade73c3f95c22f3c6981ac4d1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:081f2198ad70bfb2ec66153b50b48b950b9a5550ba996de413c5a2aff4052783
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b5fc3dcaa72bbc8dea005189c940e1cf2d00c94a6cf7676cf0e1790e1191d45c
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6a10a4859527946f61f497ff84b80f973cb7be5982d428423836b5aca81a1f5d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:105d10bd50a6062c998ed107dea388dd78f0caddb0b57713c8692b1d07042774
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c9d0a5a2871c24c0b1058e419f2b090429363a319856397855412fd2c0037395
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:711293438bab35b17d2e1f162e7f74f667a6e16dd32e45122f917b6817fefb4e
        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-main-rhel8@sha256:2afb2823edc6f3434e18db60ee37381b5b79f51234c1a261b6d0f8ed74cc8b63
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:297e7f863106c6b41f882bbd5b691a12c797c24d832473a04e604d4639e4a68e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:867613178d491f416e57975843817251490c5fbca2fc69d8b55b169bea675279
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:77f5db63e17b140a8d6b84e3822fd77463035be9c0c832b55b4977696da13ccc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:da6dd486a20fdba61ea12d2c77ea299d9795a9f22d9057d65ff992b1f5896e07
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9ae03669cfdc0f4fe56b021d911edb17159c07757720ae30a1f22d7f7a897c07
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:f167e928740d1c614e26948ea58f49e569f6a4fddc438cd0abe52f60538432d0
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:8db5206532e95a7ad7cb23f389155d41757aaf5f445ddce92b008a06627d3fd5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:cf5629823f2dd583495bcbbcf3b83b4f29f855ace3c388f5cb7b24a6d34ed267
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b254746ed3faa1f1cbcafdf1343a1957bf0214311b36f4e892be3000cc2aecf3
        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-docs-rhel8@sha256:e71f2f2347dd46dec790405b1bb98d54a348a4583949f142f5703be9a790f96e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:6b14e850cda9a54618847858292ea669abff599a40692e27fed0e337c4a60526
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d2e827a209840b7197960c8115720972237532eb9cf9d6fee7a36107053408ce
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:b47c96af1c9ffe4d8728da510a93efe21adc221225fe2b822cfcace6c6672ba2
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ee55a233d2a8fd77d89ec2c69f357721c7debead6470a9f494b3cd6a001829c4
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9b35ae6df2c19935783735d213483f3fcecead2f49f873a4f7844ef9fb5c7f1a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:df8cfdaa40b50ff2f2670d97c2115b47ae4bea443ae2831caaa468dd62f3c75f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6c32b86ed8bc18e384706eb6188406e66910bf34c8869bd155a60c3525d0fea7
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3d7c8b77671740e324ee6c309a84bbaa4d925e6750979fe4e46c561bc79f1b4d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:dfeb239931f7a33ade5c829a102cabc01f5c348e1aa35a7ddc24757cfd549629
        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-collector-rhel8@sha256:4d8bac9b3857af6ba351c7768f70ef30ef7cb99ae4df60cb226b5a793353a052
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:e282a8e5e606003ea344d44ac5ee7699563848f7160eeae183aa58ad740e0e94
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9bc25e81c21cda6d8b535d8ac67c1286fe57a1596001850e730f8f73bf371111
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e001b9f844a6c298dd74f1ab683f3dbbf0ad66044cec419c373ef4f97d47be73
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f16f92e074f7125b88e9e2033c7c12b44421145b93d040034fa4688626869af1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:df7b41999b542a477848823a1d0e7e5c29ae1b00fbac035007a5a1f33fac139f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5fdfd3690af60bd5ecf04741cd1f73259491da501700b066120976960567f0db
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:7f279bb6e0f34a5208d8711ba4d7b62c78f08b683815ce33f6aa28c23c4246da
        - 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-scanner-db-rhel8@sha256:c3ec88cd99908894d0e67153779062f90ac1b007980d66040a79b2be13798a10
        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-scanner-db-rhel8@sha256:cd0c205ee44eddcdf99b84e80fcf4403851d956efc50532b9d12013bafe44988
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:622f30b7f591194d86a5bf95deede0225e66f7b624db197f6289a5fbbbe887a9
        - 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-db-slim-rhel8@sha256:0b69595405e4e598183bbf4197ac5b7593724fa6162413f225aa01a542af18c9
        - 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-docs-rhel8@sha256:cb5df858e0c5cae8f77b285e23daeb83062bd72570c90ed5ea3ce4a02d2f5f08
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d56a00b3e20e60b7169f5c35d03fa6a1bd3b9980dd3ebc9d89d759e1d6d20ad2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:cd475a6c2356d63cfe736a11114de7fedfbd8fdcfecc56224a00b6c819103be6
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
        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-roxctl-rhel8@sha256:e6687c12d070069f655c17832d94c619c18274a259ccc59715036f9908e162f7
        - 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-scanner-slim-rhel8@sha256:c020a80ff82bf4d9b5cec3eeac5de9990de76041e22c444e664a20e15c46ce3b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5df359156b01505ce43e5f14c3b08722856bdb86f3d0d9b4fba785a2e580f346
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dce5db4f162dd40c09cad114cb802cd6d7c72d0c6986581f2e74c977493f75b0
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e4a27d3ffb173c87728fb637ca7fde92a9e78ea9ee3edcecccc2a5e3d3748b8c
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:459a8d91beff91638872d377a8b82c279ad2905ce3f4ad4bfc00f6822418ac57
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
        - 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-scanner-db-rhel8@sha256:7bf9415aa4b0746d11ca5a59d4179bc382a0fac4ded969f0c4294171fde27d58
        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-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - 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-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - 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-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        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/openshift4/ose-kube-rbac-proxy@sha256:cfa10bb6b461f302674f185b26c8d6efaaeba7f3f65d2cf05ae1f069aa2710d3
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:4c848eb7465e928251e05d32ffbc93cd14e7bb77972d22b8721bd6eaa4a93d2f
        - 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-main-rhel8@sha256:c39621837cbc8419d187a43a9575ec8cb4021c58ea1b56f215003d7264eb5d03
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:139d80d398e7e5cfc85839e3039a3630b48c7ae6650d755754430fccd94d6a27
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:eee1aa054d4d15b23be293f31d3ea659e0ffc1d05174ef89a6c977dd3d4377cc
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0aedd8e865f72ffa8b79fd2bab48974caec3eea3e3a6f77c89fe6dacb8947057
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:08f537cba262605a0eb0a510b6faf78e3ba26465f636d03cc1f7a6ed6b40d355
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:a0d9cd31d953aaf7e84f5a39f405c5aa2ea62e68d6c728a936ca1ffc4dc1b93e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:09e79b5db8977520f9951cc43c339c8e40b4659d7da513347d5a88b2500f809d
        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-collector-rhel8@sha256:01b9f9798d3ecbefe3da1ac2ac782e8e8b930e7eeceb82fe3473b5bfc1ccd40a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:762ad216e79be0837e98873202b0072c7fd399925ee94bde57cc61c68cbd5f4e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:34694b9f4fe7fffc0c547be4e311579b5bb0c1fa92d8257bf6d1581ffd655c46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b26133843687cc50e2c52d6067d8b3369b5cb28dfbfd15dd4b6062096673195a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8760d6dc68c86f0c5b53d8f0bfada0df012f80bc8e0023ba3522fe6829a05a41
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:bdbe08ef2d01b114702780fab76905e6eb1851684692ffa0a4c84604bda3ddb3
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7ac504b7824d17bd7ac55b1e59c26be308506f315a0ab0d8c45d3b4934c0a16c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a8ad0e76ce4cae9f9b36aecf125c4ed56fc2d776fe3df113d41bfc1c2f8b3602
        - 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-main-rhel8@sha256:364c107c34694ca33ac724de78db3e41ee55f9098d9ade0775a51b11f1533065
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
        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-main-rhel8@sha256:3858ab936d4626a11bbf895d41bad181364ee5df3312f6dd29ebeb9b7d31ec77
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:2f326cabf03f780a3e6120995d5442641764641f62430d82e05edbe21b30c7b2
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ff27f03064633d6d08f8383649069e39c868def4aeca8f2622750397e049d0ec
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b82f7f654235688fc07fb037422a73e1106e27024d39a68ef7fac1422b69496d
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:08aebe6e8275d3314b6756d522ec568ccdfb9c52df98c9822f187f6c5a3af19c
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e2b07cb7d690477d78a2b8e1875545998d4bdb946f80dd0533a14187da99dbbf
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:4b35f5f39865238a8e95d3cba7ebb5f15ccfbf6a2563c34f57d91a0b5c927066
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:59f1862c8ce188906499f08201ae05deeb47bd4fc5eab4be0386ca44ec065da8
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b5a15f2985b114bf9bc24a0d9942db5d0cb818e60fd15a2f9094aa00904cce77
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:e79a5e5681ebfe2d6349e2763ee0c1fa521b20319846958e402d23229b1f257b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:12db245af3b8475c9b5680bb0035c566109819e05cfe62bd1dfdfb5d6ed25bea
        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-roxctl-rhel8@sha256:bdf9785bff51194636c6e8a518448c6d12a297bd31c4bb2e79d07084409c18b4
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:5092c3fbb4a38c06a2f42d125dc718ef0e1005f304ad8046afdd2a5e7ccbc580
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:2c35cb6f518393d002edd2bf5f714c1d053cd0fab55f6152a2f35676e4979202
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c36a557c9dc2ae4479c432933a9a4dbef38f2be53360a68a5b6befb614d01dac
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:10d0cc82b6eddd089f3a7af37b872c33248513d0b4d3f094b6f62c01f4460825
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2bb643651c8d51525223df3b2b675947174bbe9f1eaea8688e1fa83044cfa41f
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6b55a25eb3a611c648d9be883828834592229c16f4166fd28ef40a25fc667061
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:30f9384244819da013358325cec364bb210b3b33b4cf9680698531fe50562aac
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b7eb17fbcf6c4a6e4205ad66f1ffd9b10a4634f6ef5045d407c266566b1f255d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b0c9b3858fc0547dcb4eb3065dedd5bbcf1e1f6707a8ab812ed06882d4f6d6ad
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:9fba889021a876ab627ff8c496e4b6c46c221c61142cd0c76daf33c89762e2c1
        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-scanner-db-rhel8@sha256:d6b4f8caf342b105c8df14c5c9180cb36123e08d34756ee8fe4f2f76c34f8064
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:763e7568704971cb4656727dc223374de13e82b4304dd3f5387ddc0f4e42b8b6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:65707fdad55767ff5598a8d3679fd0779a37f59501e58971b81bebcb23f1f9fc
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:664a5dc40dc1fa06c47a11e13b0ab5e0612a981d7b69bcfb29422abf3d1a13b2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:ba6e25a413c79131b966a097f72c36478933ea52deb55a62acda7011a96b3983
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:39cfd01236e905034f6645a73063427436c14e351e0e0bc735e73e62aa5a1c3c
        - 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-operator-bundle@sha256:123c0108bd7a190dd2accfd21786600f787147f040e57fb5f840861e2caa441d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:76f9dc2e2ee5595c36530d97dec216e2dbefada2fe0747e3f6a3a725b75722ab
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:0df4e95c7406aee7812d145cdd4d8c61cec32857fd2079dbc4244954a9d8288a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:183c75920ab8e7cb947cb966f1543e39b6fdb5e1bb0caa1b0cf5f89671f0328f
        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-v4-rhel8@sha256:1817cf8d2c08b04391792321702ef53d16a4b1ca06459c00c9c053128f534358
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:5914548f6ce2160e92c5d96580ffba23cdf1ae940c1f73f3f6424d15c6e97c37
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:41351e88688d23a443ad4f141caf0433b2c2789e6a1a85b4f5b36abeb5656bb1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c2656b794ec4236e36f48f71bf26bdedd9de27fc4acef39deba2bdcfcddab03b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:fde78d34ecd2944c7c16b4e823c76b3667bf6c5b468e9991128ecc4272ec0e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d928600f75461465598a10de8df2495a275fd5232a92b078f609d1f5774eb778
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:f07cba0738897e0e7ae74971be0470ce2a855657f133a6e1cdd8a7092f6151b0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:cc4b329cc795752ecbb178d2e4efc152bde54b04181334eb5bd70304c3354cad
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5109b304eb9458f97af85c2ba63e08f51672fa3f9406226b7f357b86b5828dc0
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dc7f23341c8b209f1846f29f889d00ef232fb58da9d5b4bd561f3933093b2786
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0ff948b5517df3773cae2df02b708c348d8707409899b1de4108588e31601c0c
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ed33e7396357f1db03a065573c020846a5872b12a21284439770686689222434
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
        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-slim-rhel8@sha256:899da9c23000bb821bc9d544ebb56bcda4f3245ceee5b1b9c12d09f580b4b9a1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:ffe41363dc00b05b0daa0c6d16efb30e534086aa4e3d7ccc599c86d33813138c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:713e61d3c8b55de1edc9d7834d3e8576718e1327665f94a6b58178fa7496c0cc
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:16b61ca1b9ee4e0821e7fc82fe4def75ed22950e502730f5704ec4fe63bb2e59
        - 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-rhel8@sha256:b5cd08349931669055f03d21331499ef2ea04597f8a90fb201615d43000271bc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:90c47c6f95571cfcca04aa4e05a18befad75c1b44a6f3a055fcdfdab749d29c5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:6da59c5b82625894f6efa3fa0bc5ea0378edd4f95cf42dee772e9c8a565dba81
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:19db8c5d2425dcf18ae63b025f946fc46adaec0578e9505415cb585797069e95
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8fad8ab2efdcbc99d9efa736a90cca6f236f0a9d45fdb355ae0b6b4dc42d77f0
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b630d53ad0b862151be7e14f0483ca5adac570216deae66f60e75af87a4dfd46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6d6b2696a12d49cf3403e338a0e028187473b6f43ef2b0bd72c7701200ac8e2e
        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-central-db-rhel8@sha256:ee14e7361bf64117af506a99906b3ae43a2b34c78f6e80a924a4419b047beadd
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b55eae54dd5bc1bc58e9d52722a5830f8ee73bd59cdd0190147df8145f5ccedf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b6f7cc10247ab111a4aea231858b4f6fd17bfd4e4b4e4bd62873567ab875fb2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:19b84b221ab9ce59fd0c8fbb4a713ee66304fd92822cebbcde0d77496ca82b0a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8b24cb309fb5dad63d92605093b7e1cb659d9c0c1f31f6d5a223746f25dc5e23
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e7106f927313f2e0a08c85cf1ecfd1338d222f02dcac6c40846858a7e0c9c32b
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:b3b498320cfcbf06da095f2427814d7f157ccec870383085be733ad7b6e6ccba
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:6981a243b8e6f095cbcabae3056012e9c60914ac42cd795c4163f4fce64a6aef
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d45d0e810330d7c95c2e4dc2f1bc5c5613f06ec09b4061f2874c8837c73379b9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4e48a0441240e9531e1490079e19edd65526b726b87bc5613b3cc62e3f59c1be
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7e1371e5e0b53983ca615309f44f6e4c124874ca1ae8a0fd4a59a470eb6a15df
        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-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7
        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-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - 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-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        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-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - 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-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        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/cryostat/cryostat-reports-rhel9@sha256:f7ac0c925c4728e482efc5f553c63a08e2dd453927e5eae606f83731d889c6a1
        - registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
        - registry.redhat.io/cryostat/cryostat-storage-rhel9@sha256:89bb337dd42d319e1fee74ac7650f30594461b7c56caa8c52f2628372e19ee3d
        - registry.redhat.io/cryostat/jfr-datasource-rhel9@sha256:b6c08667d49f70c3ba26a09a62a6224bf8c5d579be1988c0caca5212fe7d3d7a
        - registry.redhat.io/cryostat/cryostat-db-rhel9@sha256:1715bf1197a9a95f8f54ab02ca167448c1390b385c901645b062d066f0ca5459
        - registry.redhat.io/cryostat/cryostat-grafana-dashboard-rhel9@sha256:6fa1ef9bc8477162deda942ba4ca3f79b87928ad93ebefd4cb25eeeae0a0b33b
        - registry.redhat.io/ubi9/nginx-124@sha256:f3a04b52db496c383a00252832d8809baff203145a53c35cbb71c3ab45cd8a10
        - registry.redhat.io/cryostat/cryostat-operator-bundle@sha256:b634b9e8b54b89b9dc2119961b63d0288fdad007a1c48cc12b05595ad97fee83
        - 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-agent-init-rhel9@sha256:94ebd8d92359c1cfa18f9d3ffb08df02af53253c8b51d578b89c644806bbbdc4
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/cryostat/cryostat-openshift-console-plugin-rhel9@sha256:d64f56fcaa6c764edb1bb43c8a71af43c27aba56e36c8bac812c40a725a53ddc
        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-manager-rhel9@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-postgres-exporter-rhel9@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        - 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
        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-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        - 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
        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-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
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        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/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - 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-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - 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-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        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/rhods/odh-trustyai-service-rhel8@sha256:fe17d6e07ebaa088f274dd8b5e83892dacc11cb336065b06582a3c055095dba5
        - registry.redhat.io/rhods/odh-model-controller-rhel8@sha256:fde989817cd1a6ec8eb408a7f6c73e28ba043ab2d88035586b1b7e55fb3405cb
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhods/odh-modelmesh-serving-controller-rhel8@sha256:d94395fb251e45aaa73d09bc6106a2947c16b90d87fc3b64bfe4f2f600be5841
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
        - registry.redhat.io/rhods/odh-modelmesh-runtime-adapter-rhel8@sha256:08478a1647d0413783bcbcd966a73b444b580464de46efedb39504420f22053e
        - registry.redhat.io/rhods/odh-kf-notebook-controller-rhel8@sha256:cd0ab8d70559be6074fbaf1caa1d50f8eb75e1bff1a22d6d69380f19190df0b6
        - 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-dashboard-rhel8@sha256:b98171c5543815abf7c095fba92796ceed9ea44bd8b78db143d2815c6bcfdcf6
        - registry.redhat.io/rhods/odh-data-science-pipelines-operator-controller-rhel8@sha256:250db47cb873207cfb75c7e8a2f0de08b75b056a72db73362d2d79c08cb7b185
        - registry.redhat.io/rhods/odh-ml-pipelines-artifact-manager-rhel8@sha256:76c67d7015a2db6965219db6533e0cddb5b7cf699c88df3ef81155f9c192a3cc
        - registry.redhat.io/rhods/odh-ml-pipelines-persistenceagent-rhel8@sha256:857a8eb444375505ccb34a11cce69c1794ceabbfb00df06933d7f12cd187319b
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhods/odh-operator-bundle@sha256:b637a02d23bd8364cc8914421049eb60169c163ac70bff2f33591df1a1193002
        - registry.redhat.io/rhods/odh-notebook-controller-rhel8@sha256:753994fce63802f1e1121990a5c1dd722216446abee54cc1a7c50ab195134414
        - registry.redhat.io/rhods/odh-mm-rest-proxy-rhel8@sha256:8d989f54009484d7f43fe79d7c37757418fc3c15cd4d7e80a2076677a9645bdf
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhods/odh-modelmesh-rhel8@sha256:3827221f84d3aa22440d6b364b990a4ec0666dfb5963f174f7ed518b3650d223
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhods/odh-ml-pipelines-cache-rhel8@sha256:33aae32e3d348d382906f6e926281852f54006a94d7bdac188bb33debadec059
        - registry.redhat.io/rhods/odh-trustyai-service-operator-rhel8@sha256:68471555d0b2bb8150ebfae8d4f3d1dbdff9c5b961ff2305ef23ab7514cbbea1
        - registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhods/odh-codeflare-operator-rhel8@sha256:2841fd3051a50a1b0d9e3caafa20a8084b5c472d49393b372828960dbf156674
        - registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
        - registry.redhat.io/rhods/odh-ml-pipelines-api-server-rhel8@sha256:be57f237df156474a709667fa4fb4aa142118e3459963fed56648c1cb2e38cd6
        - registry.redhat.io/rhods/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:c5758102609821a6fdabec0277e03c4c728f82176093d1ade0570aba5f3cd8f9
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
        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/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:fc98ed817a4e9ab84e2a66063987304f0cdbe6e5620a58a7f25cccd61b34ebf9
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:04859c878ffcc8c42550a98be625ac52212f9b79a6fd5b3baeafb3592926cbe9
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:e68492a6a75cb83be0a968b832c1478b97f14e661376328085fd5416a08cbc31
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e9612ec99daa171c403b5ddf37788526e5375b83987e5de9b1ebe519198607b4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:687c8eeed55f021ecaab1307f0e88b5b16d91f72d63b3d7168d7bbee90e8947b
        - registry.redhat.io/ubi9/toolbox@sha256:7656f815a0d13ed37f56d11635559a87a3d00840253755c71b644b858f67d556
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:cb47e165935f0d9d3c88088689c37e68a69519357a20d3c52ab6f71240dab507
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:a88696cff8cd2cc2e295c9ec082b7f25f61dfc9ac12f1c208529ff7036d5af29
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:4c57dcf4df09fe0d03578cc8b9a3ca2ea485b6af0ca0203bfb85e640058b7daf
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:c3e283c0536266195dd461042ca0036ed98cc33650d806be132db4fba45239e4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:2b4136569e10ad7d47c82bedf55c1705a833dc67c8f833656996bfe1fddbef3e
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:dc0db686b7688f98b5f8595661022cdffa5d26a078289cc7aed528f0ee1d08a4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:9c2d6ce05775ac34ee5695b3367d12bf2a9c14e318a9544d00a56653ea5f2007
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:7da004e158006dcbdcf0c3b78c40411b82c9d56ebf54b1c30c245b6550b8ee7d
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:5f581957e4f8deebf6104a394272e6fbb1c54d813bf069e95875d865eac209ad
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:152b425725228953f43b57a4a034a6725993a5ca556af328ae5e06aa3f1acbfc
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:4c192208c618b49f31cf31c9de1a33c622ce3f120204c2eec8ff7c439ea6785c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2638e3a90bbb242dd2483fefe9fc8b472f334c510d0139b9b7c875c30dab7984
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:003fdc6cd1821d620e1ce4050ee608e2d2a32f2b08c8fa9c147e2e14418a8d91
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:80fd53a580ce7bc4d02023d38a04912e84c2cd50679fc5ea034afba935623157
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:a936d87646843edea2a84eb429bb44eb730bf3e04e8900fecef66721426dba89
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:1b5452b87b36de2b62febc777efdc6233a168ffcc09e2067e482cc444463a57d
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6a388ee3cbe3813ac955d319f0ab65a81da321d982c9881c6c81fe135311fe1d
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:fe6593bc73e77d315d82b7921bb1975c19fda1e7630ef5b30b69f5901ce30178
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:cfaf4eb86ddb9c717340ab17fa4b83323e5b40977ac70265376c87329a3f6f20
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:85202cb75250a1ba2691d65b52b306fd77566660dd29cdf56bf8962e8bb4939c
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:52e1ba8ebf4d55c64c94c9076185c5612b537e6e5ed4944fcd6ea87ccb9cd182
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:239f226328e5ac77d6dee498217d55103a6d562f4829e38abf65ba55fda0aca2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:2a16c353fd13dc1f3f5c4266f1b9786a8e7a100dc05f2d554bdaef082271063f
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:1b7befcd29c9c8f783bdd3c5654b0412ea45cd88cd18eb5f8f5a411f1323c6bd
        - registry.redhat.io/rhel9/mariadb-105@sha256:c390b12f5c2c3ea7cd897b59eba7127ce22f474130cd8c1bbbbaadae870baca4
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:5c0d56f434298f6e8bf6cf7061cd1ae6df9915225cbf04b010b6b59a64775cc9
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
        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-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        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-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - 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-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        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/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:2f6db789ceb3f90f9c9911c6392e62d0a8e4d61be68a7f7cbd781f47faab6389
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c48474563d98df32e7243e33302428ea8836be5e1a2e30d20b4d796a62cbf6b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:34d177abb56b948eaf9ce6fa62e37427ddee9fcecca48e752d09f72c69847a46
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:eeb8bdc94e7fa2b454fedf72eb75756052f8bfb9d92b116a8267a5584e2528c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:60507a3dddbd88560fd85204699147facd2b6371fb25e0bf6701dad02c0b4dd4
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:038ce76571217d6c624d614652e8b96ef6484562cf52ec1be88392b8ef8a3bbd
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:d87e4b1cba72eb4f50b3f2d59863799929c22ca37b01a1ff4828a9ce0be31f25
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:28ec01e514c15cae145499840597d1be1b750123bb6014de2ecc3ef0d60fa134
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:1dbf09cb1624c9f961f8ac8e371c97aa7c3fbfcad4c4d02ab4fad0eb86d2aa95
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:9aa5a93831992588766ac8594ae3c4dc7111d08a90fdbc8751c40484339e46d4
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f9c474d454d0b006e06859601ec9a64b5e5c91e9a47bfab6ad6d8cce5aa6b89d
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:4b1b9f05a94713292a7a2f6782fe1d3eea6f36214c36b38f402aa91a554ab18a
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:1a1074263ae26e4c8b0e3863228c35e50133169f377ece6c47b58a12e0fcf453
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:81ae2b95f2da740cb5264b9ba8b85f0f58bb4ab80d6431f66d52848ed0c21afb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:61a506fbf263cd72951ac8bd151127e0c74fc74f0a05f7aaecaa54fde47ee490
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:13b850a5a3f8776c6c8db887c666d88df72901895b5ef1be9a8bd372cc02fcb8
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:8ffc5da798e783c65d5be7f344219b2951d8c2233d6494a4ae2bb5c86eccd699
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:45498198fadfbc1457bf2a6084ae7ea515d454d86d148783aae3abdaca6e999d
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:df34e9d2d121a3def2dbb86f108b3fb6948bc7ba7cb44c70801dfd2e81d3fbb1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:13dff890ec67fa56864c244a40fc404e9eac05f33573dd16d088b37f9340ec41
        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-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - 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-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - 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-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - 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-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        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/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:0224a782de0b062a91d9b0188a59f8fb169db2b7e21bed7624826d3fff7b7da4
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:3094dd9e7dd9fcc161fdfe983557edc9d773b2c07e727c0bbb0e37ac16a39d93
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:c16cfc8521eccd9b494151ffa98dde6b7faa5e349da611d6091038a8590dc447
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:aaf677584e83ed6a93586afbe1c9b698430593e346c8cd00fb8485ba4350241d
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:eb68797b15eb5d748f2658ca41c7aafc5b9ca38882c56b87a22d5c9a3b5e2948
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8c99d5e93a469b2aa7f7ad4810f17114bd032392135607945669d92182e37fab
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:0bda59ab4c3db060b7221c630f6241cac086e3853470a07726289b87299f4da9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:4326604a5f2f5ac398f5bccf5259ab166fb21dbd273eb233ca558a22c1163312
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:84a7c26966f563e970e5398cd0396df2b4fae3b680f14b38a59bfa34b3c3a2e6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:a9546158ae141cc3c590732d578af95ac599965b3cfd47fa440e461658940125
        - registry.redhat.io/rhoai/odh-trustyai-ragas-lls-provider-dsp-rhel9@sha256:c1694891f19be1fe1abd431505549dc02021c389e640e77877bbb7921b42aa5b
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:c90ccd4d3167d2092c451af95a773fea19821e4b8bf8fa754bf0b1b632a7f51e
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:4f250fd17c023c43ca64ade19c84afbc77e72e66548573c2f987d10e6aed3821
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:4a035bb354c4a0e4040c277b2f1a1ffdc7e61f6f505c5fa5d032d22f50c4fa29
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:ee6b2596c10ca608cc0897a84336871591bf701a08bf90f345d2232277cc0c3f
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:bafee27b0842d196eb305963cc9b3f29d31cdf2c014af88b5965a8d908cc6f9a
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:b87eb195a423337071aa318c28452d12070041168d41fb41e3ae3207619a3f16
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:ad756c01ec99a99cc7d93401c41b8d92ca96fb1ab7c5262919d818f2be4f3768
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:5f5f75d959ad8507704821add365539dab7401a7496bcc7cf2357c6cf32df3c4
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:03db3dd3eb3290b048853a8d943fa1a5099727ff0d1934eeb0a7177bdf0031e4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:1431c04ecb88387a9e15566ba8105d19c7fbceecf65eb5731fe69cccbeb09cf5
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:40e552687ecb12803db16edafb0cd93e39edd9269d1471a7ee1d011b43da1fa2
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:d5d3f661e1ab392b1e977f871a1cd95f60e4d7509f7c79d714a4bee10aa48293
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:9479d6829ab86ce510ca9c25e3fc69dff86553467672dd7f5cb356000e128916
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:e45e6925ad930d9195d906fc922cb956621c98533cc9ad1916c510e8a79c0904
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:c852573614458adaf8d0e4f8f3f675c036c3daa1ea8251c7601b2d4c22b3e7de
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:6a151dde578c2fbd7377864cd5d04268853e49046be62cccc1d298e444c73f0a
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:6bf37b3786398e1d9b7004d5b08e0b4c58a5dcf453c02a9fb260bdfe9c32161e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:b03cd2977bcb3d3a44795eb17e7fbc7dc842ab277fae441031ff921bdd7f56d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:fd83ee0ec98d0bfcd7f8567b2f802f08a3a8fe74eba2a74ae560f90c1c72bee5
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:8d17607ba6e4b859ed724acd1cdf54e7dfff6989fd23dfd7b77faf55efcf883b
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:59f75020cf630e2c7aeb1ca7692745c8e11e4ff46cc29fe7779213f7b56d1e71
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:d79f02050b0cb8847c5f83c0a76ab47bc79a2fdaa2c18ab6ee6b3d94ef9bc7ba
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:77cac4adb89bce424db492657eb9023ac9574fd32096c3bc68b960020fade08c
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:5f7a974163856d07985b5da257688aad036427d3724194050782e58eab0cff1a
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel9/mariadb-105@sha256:a376c86dc5b288516604d46bfb6025972e962b2be5a00e70d5d479ae465e0bcf
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:c00d908ff5d82c0b04ade151be9a5a97843606dd9fff731c849717ff79a3a596
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:ed78d0c5946a2cc75c8bc2db6dbad5d757102acfa9defcd3f4a30829aa47d9d1
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kube-auth-proxy-rhel9@sha256:657bc0b43fe2da3211d80dc5085f57dccb451c30b1a254b87b4876745c414d36
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:84a1b58dfdd85eac95478c681affb502d2402a14bf2879aad36f1d17dfd08f39
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:de67ebe1de42971f1cb99df039044a6c79471802dedf666282e349c579f79c3a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:3e08c969736bfa9a44f6c7811a4d1428c03fa80b52e0b6391aefba3c36758751
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:dd37de4ca53ce242a0f67a70d19eebf157679098a3417e9ffdf8e24378f6bdcc
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:1318b9f8de94db57dffb87447b34bf660eae0792915b4aa64375a0ba0f13ad85
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:2efaad91d9b7c997bdc41e6120d46620dd9890eb6bd6baca7124aa00f66fc972
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:3d63cfa35ecee611a9075ea21060f75b0926f9b018622f52282b9f375b5ef968
        - registry.redhat.io/ubi9/toolbox@sha256:668ae64b30c95862377fc2414e48714f1aceff9d23a1d8c4141e3e83a4d4fc2a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:7e7aa488af45e4a038664881c7da3a9016fc9f9c7952efa35dfdc77971fcd5d3
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:bfab4c5965e44d4428eb5a3d3ce85a81a163e15093d981a9fc474cd8f9fd64c2
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:bd7352755c52f16dcfd7403f120f65dce7742dfacc393fc6bbecf359faac47c9
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:4000a91132d67503a4691e76a7079f9140e3c8091fb1a59ad235446f96cb1a34
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:70e900e40845e82ef9ff4ac888afa6a6e835b019ad69aae7297d111e087520a3
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:c8c0e4bd524abd8295ccec00e7eacf6aefedd1e67d345e09088bc87e10f6827f
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:13ec5c9b96a9ca8c0a1fcc0568cf6f893478742d28d3b1381f073b9bdafb3320
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:9a6f0917e40d82684148d25c96e2a5b4a8a24dd3202734dfd7450f55d9e8b9c0
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1552b758539ee09050b1923cf214d6d88543d51d7ca230d6880818ecf287c10b
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:eaa42ee5a963696339c318b511a330b2b6fc9e1eb173d2d47f9cb757f6eb3da9
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:726bdac8c5791695a5b0a43654fd482ffb7eda2fb384dcca42a73cce923a411f
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:4afc7a50800be57c57170b6ec2345fe0a9fab1eb4ae179025f6fae230bc05894
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:a50f7e2e8891acbbebf64a2acab98ae64e21cea7a5b5ea4b63a148f4fed91b1f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:a59bb87677721dbadaa3e88e29d47470d0afa2c1b52c652caa77f74466beb698
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:d11ee73c3dab3bedb39a6da9c29b5221a307d9f69297a12df3489f04cf35506a
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:4fe3183daa06c1605c47168db6f96a6dbd2b72df8ea99ef755372d7271299c3c
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:b6304ccf7e8064bfdbacdfe998bbda099d6cfc36a9cd92b77e4126609ac34f4f
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:3617ae4fba7499bf17ef591df2e787b353d6ec7962bbcf14c4c8b3edf045f314
        - registry.redhat.io/rhoai/odh-mod-arch-gen-ai-rhel9@sha256:459e5abcc3d5403ef25f53eb4c6cba75c88371c84dbf02d8cb67f478fbe624aa
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:95177d662c1ca6d86b77f2a9427945e4d65e8236b7adf15f3d35025063afe94f
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:f5b70a687fef130c35bdeb108d7aab4a0eadf6182d379b6c517e9d1157713108
        - registry.redhat.io/rhoai/odh-training-cuda128-torch28-py312-rhel9@sha256:851f2b31fa418d2eb172ddfa6010851bd5d4f0844d16b2b42a408f2c0b985b86
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:20b705332935cd372f06b86e36c521873b39c7660b077b90d39b7bd37700c679
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhaiis/vllm-rocm-rhel9@sha256:8624e2a5086cf1303b59154a817f60a3476d6ca48899261a2e477eb9e99ae781
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:45ae3dbe4cd8c5ea8a5ba767bb95c540d618b6e8250dcb1dcbac01e3ec805245
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:daf66fb7ec41191aa15f32638fe79f4a76c7d158b705e0f761f5b77e1f91336c
        - registry.redhat.io/rhoai/odh-training-rocm64-torch28-py312-rhel9@sha256:501794be7653f12539fc420394c5ecfa2986109ef71785534e6e068212d07c25
        - registry.redhat.io/rhoai/odh-maas-api-rhel9@sha256:29165b6056073e3f040a8d4eab023dcc522281888f7e6db0aecd447762761115
        - registry.redhat.io/rhoai/odh-model-performance-data-rhel9@sha256:eda8a51f260ea4e061b528ed2ef6f631a8680e5623ba5ef528698e71d34b3a58
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:647df7a0f1d33fa04e39f1d38f918236e9983409a07fd9de21b085fc847f0854
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:450b2b76c53f17163cdf91b03d35c296b8d7298d9cbb7b792fd2eabeaab794c2
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:65f00fbf16f2b8ec98765b854f395cee16d69f2f58d0fe81fc1ebeb3817fd326
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:78b6e29c66a425b9f097cba92240f96d32f756d379b779ed37ef51e8625364b5
        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/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - 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/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - 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-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - 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-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - 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-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - 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-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        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-launcher-rhel8@sha256:4da77afafde99b15fd357a4ab6609644bf6330a1d9c0c03e64726ed1b9633230
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:fdc2bc06b0dfa79ebc6451ac3793b5e8d9f165171633831dafe46ebc18c10c35
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8911afbb65c8c4f10c3597624485be54b9103e87a5020b718b35ec3df2c9bf00
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:7df2f8bc2c5c0f4f347d009b62a058b5107413a2abd789f6010eb4d6c9e4f8ee
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:5d15175f934017c04d6a6057200ff55b2172a1f4bcbeb0f2cd9e9e545631d93f
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:0af6a91553f40ea40e86d85edc204658af3e5a45e8ab94cdb6b767e545df59b9
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:932e83fe9c9b54934767a7c5af683b2ab08bd2b4f0524c191f1c766dc64d9c3d
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:8fed8f58732bff512289fff738d0a94be67286c41b24eaf5928bbcb30d88c88a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:a4b9553fde02d9c67a9c98f063eaf82fb1d2689f4b1269e57bf5f12c8d4adecf
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:232ebac25084db056fdde49477b5c1e6a03a0228fea3758bcf6234b3d0eaa582
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:d2514bf4b4b2d9abc19facac3f1a55405eb3ad0d9e9203e8816bfcfa08c9a6c5
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a1d590d0e2b3fae9ecbd843a664dab083061e797f66a9f0a021b0c2c487d7e45
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:24238abd46633709feb75f2a3e41cf6c9e8528d2c0e4be2fac6f56de44e3fb9b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:220cad7a22d40998063c6b4fb2f63e69330e64ca7118490a6680b05fc99b7733
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:4876f14ca9cff0e2b998a56f2f56d0775edf3963de610f4b810b4d94fb12d719
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:d9b55e8f25b81050380b4aab040243dc18a7432c48912c9b660c97dcc5eea008
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:65db5e8cb2fa46d020ed4837d4479d133b52167c373e65f81cb590eec5391af2
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:52e8deeeeaa21b17370a5d5cd644745da745b6e1cee8c6295d6df75c8d2aec04
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:a9c6e3afdf605465766fa93334cc0f6bb5e46a5fdfd7ec64d648e2ed72b05ccf
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:f4d7d3ba4a0d3322bc9f327e095e9ec56073758f6dcd8da8c7bb185cf952ead5
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:12741379ab24d2286b5fae77f4383fb65713af7b3356fb43d8254ea85d4b0ee3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:cba9f25ac6bb2734bb990a622b515c838b881edb688bf44ff196ebe7684ab74b
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:2007da5abf840712cd2edb50462b2d8d571a0193c3ae1550d4a279eddf2b335f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:214ca0608fcbc0fd585bf01768d28c7ba17082d1043349ec8445afd663095383
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:807ec05e9e107afc969e718d0c2c980959e2fd462e777a5ff63e55156ea150a4
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:9f7b1cb8623de8b0550b0ba124d3b50f5e960ed011b33a3262c6346dbe2dff95
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:d709f65e1194bc877fa4f9ec681b598467703d94139d57b58c24490d3a59fb82
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:267d6795bf53f9a1955d73445776a428dd042af0cd3cb8bb5b91692a1bc1e5d2
        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-notebook-controller-rhel8@sha256:8883bf71abf39b4a6985940c287eb6ac7dc137d491264805d48bb112b65bd008
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:74e6cfa0bc481588cb8dc61c206ad567fbd2b28f43c2a86bee4a8e0eff55447c
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:59e9cc9cd57ba48ca7e87ae1e797a902f826bb890cb198ccf549f76ea581ba6e
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:fb630d6f5817512733b8ea05f7147121928917a24ac8d98239f43d920880c359
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:030c53690fe25e15bc9907f51c3f04fab39b4d085ff2098d26316ba32cc8b09f
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8c19c7fa535f36bdce3b73cf3300e321909d44954cbc63a8aef6321c5f2fa693
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e1c19bbcd4c010ef2bd4f760eb24b2c96cdb82b4e025361a433e6a241eb23cf5
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8faab013568ee023968a5ec5b3a79977d7ddae3deafff6328e6fd56a27198e24
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:688389195aebf3f43e74e40d591d2fd5f9ae41994d8ac2db661f292f6eda012a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:2566b73e98b783871fb500bb1a8cc4e3d58a513c1bb18abfb525da0818e6138b
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:cd6b535d95eb1b44fe261a5336270fd898b966f431c14e173944484381c26d25
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f5b17f44c5ab72d6cf658f72f24f15e06a5ac9be1790336f7228ab8e7cfc15c3
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:77bca19180f30ef08f4d1598ac6c365e190bb7909ac4a1fb35d9ba9ba8d6ff7a
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a3048eaa8924ce3571c6e78014438183fae70d9e8c833a7c07774c675104e3d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:cf3779c64bbaef1988886ed629c516e7d6ef7bdc73b9c95ad4c087b62e75750d
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:6b2c0d1dd40e2c276684e17818b14375bc778e6c88df0bdc3cc24bfc9294804f
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:fd4ce524acc1769475079c7231f5ea79ac29551c513855ef34e5694d2c9fbbd3
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:71abac4fb3d613edef7f3ba117a73bbeea61f341d6182e8310360a76576c789e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a37529eff3656a570d796083404e5a3f63603afecfe9e738da1a243c0cb3d7c2
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:9ccdd7fe8223057a2234a3a2eb3b492e7b69e6ce714cc26a805fe2dd82935195
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:a55f73d72ad2b07f01c49949cdb00969bfe4789375b3d7cdf9814b969fcc808d
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:363a35c332fc80b068157951d5e50e6b7209947649cc64803ffc02726e7581ab
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:850901511bde065cf73e4c18d787dc10b6e91ca6139fc3ba68da28c41dd28236
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:7c895490d49beb6bd724f47ad1b17ce501650557b0889314799c4072632f2b99
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c2ee4136ee0014d1ef395b5e3bcab125c846f5e258ece3631d912f431c8d208
        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/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        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/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:d24e277f468b0a48f38801e8e0bcfeb8264c3f7c128073ddaa17934b8572cc3c
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:b6039c3c33a5dc345ceb8e757437bb13023d2bf85cc2b4c10b9ab3887e78e0c0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:bbef4839f24facce111d21aca43898dcf4e6cf57adb16200e3f1590bd5f89eae
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:520ed21b80e5487b3a0a13b7e5c7d791d4dd28e0b6799d57abb65d53fca5a03f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:d47514cbceb3cc96e9d33b7db6fc1df60893e5c4118bf6086cdd27f04c472773
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:c1c97b6beb759d3f6f2dd53c4258e4ccbb3bf35cf11873bd446b135defaa69d6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:de0e4b7fb822101198817e83cd7e9f4f7406e75ec91d07a833a27a417cffe66b
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:b20ee16b776871d7c49b23f2bc91726812998561129f5dbd14eddbfe57964c93
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:baefbe4e7dd5aa74c71cb81da4a7a2b888a02d3eb1398ec4419bd8003b77f0c2
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:af4721d61dfb61c75488a1bd6a5f62b23e20d7b7586a9cf51ba062ece2837715
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:876ca7ce7b0b975688fb4a77d6cd1a6f87cf9eb40c2a9a5b84d8cffdc80eeebd
        - registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:bf6231bfdbe52b597d86e03e4730ec105ebe7a639fcd529268b7c0423f2a890c
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:6275a19ef06114b33d79833a94ef10cc8203368eee98e5d415e73d20cae1db85
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f49483df1d342d8e39f9a8085920aad79313a475df02a2292a136ecb784402b5
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:4313cae03c041d461bc276abc23d706b582b5d16feab316796ca43478b9dc705
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel8@sha256:6166f525948a018c41d735014d97fdfa52024f7be31e18976d85d1a0d88901a0
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:6ad35cf5c4c62ed5ad4e192afe8cebead9796cb24a964401c76ff8656c47742f
        - 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/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:6f01ac7cc62ab961b9c8a630a558338a61f6d7902301c4a1ad337495ac7ce85a
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:4e8f6c6ca0ed516b8310af0332637683b5bfc8f2946eb935c647698dffbbcc79
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8a6732ac3ca60f13dcb1fd8f186d2fc5dc601b9b5981a58f039af9e237f20044
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:53ac36baa374159b9065c718a9ede821bbb61d9ebe9502b2243e0a9f7aca0d16
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:87685c5cab105d876ff0d14b0e24d8dc2a1ff5b55bebe36028c5f3376b2a5271
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:71cd15f0b1acba3a48ebedff037bf8a846b426c18363a4de8896a376b6b7b3d5
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:b24c25dfdcefb4ec26e7f311c00798df108f7685def2b1762b7624fdfb160ebf
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:a6e02e1876fd5382ba4921dd65650b2d747666feb96c839f34e99d2972dfc323
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        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-training-operator-rhel9@sha256:b2ca229bb4c4dbf04b96766b8af8d9f55f2edef59ec4110de0d20f8c857e7d27
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:a44d32a18b1e906c1411cafc82102881573fcd04e040a4e2ba6bd1bd617b70fa
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:2f3f305c97e50057781553416fb4026cde306ead0fbe0213627b9b5bbcc8a0c3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:2065b96bd6f0a830eab66e36217a927448cfc5a7dabf2a5e7d907aa6c40657a4
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:2fe9473cd1d6c445d2ca7cc357ee4bb009aa1838f9cb69ea418296b2a044816b
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:7b3d7787ba95156de9c284ad78f2d63a0d3bcb525f4d8d11ebf0203d4c5c1fe0
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:6234e15f001122ab222481321153fb0eba7f4d86bf3dfd64edf3f6cecbe7d62f
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:9104cbc2d595933f0a2acb7313e41ed69905e76a9fae6bd9820e7717b56a632b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e87a96c8a61042e83b8db0194adf3fd84c3a311b1f3793345a35bfd0e7ea56d9
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:32c9511846077ef6035eb19be7653f6a78e0f207eb420ab93b18f742ab5779b6
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:f9965177de24f3165ec4c001c14cf1e2c2c01ffe847839af837c442e3c96beae
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:e6fbe6723b4801f6854303b3fd7d4a4a36727bdd28dc28002b7de4929739ccc0
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:d59ed40de694bc0e0564bab159a5b586cffa0721b6d761fb2d81dd42e6225d1c
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:cb5be3dd7098f4c8d66f9e85ad04656460df6102652deddc6cccb884a12be733
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:abe1f9dd11c7313fdd55b678be511a5cdc3546654a68e2b53d42c1013fec8d00
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:1709fa3c79aad4ba7eb9be8299949396092c8e20210124e0c0936385bc04e839
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:7fd540586a1ca111370100a473923b3dc6cec4255e9e4f3654bfbabd9158a2bb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:463e9be9c4409ba1e5a42713bd65844a023e7a3e9032d4e862edbaa5fe35300a
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:d7c4ac937add511460a36375d9b6b3c475a3a9a7cc96c00df2fbad6219aee0e9
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:bd6d1599b4ff9eb890be9808014715b28ca19247222d65f40df024db4dd3525a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:13f3679ab289eea9de54fe129a7c83f6c8ec5d26b61b430637a7c4cfcd31a74a
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:74d4e0174655cf6f6273857325a1e714a1531c5a06ad38bf139bee9c7d8f5f19
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:27415b1c763cf89b79391f0b039936c3e078a078bda4420f13bf10ef9be31d5e
        - registry.redhat.io/rhel9/mariadb-105@sha256:5e77b33ce04c1eafc2e8840586ad6a5b51148dea8a46dda151071e28858331f0
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:5d79f0bcca0a213b53aee6d88834e503d343821596b857b13d3a6362de8ebeab
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:e3b90530c6e38f6940d7f9408e9fa2c81eb06a857ec2b0bab5d006b1e9a63a4f
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:2b3aace0d80474470e71c2c8291b25738e096109229fe6d5d3e06e9885ee58b6
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:ccba67a6a5aa3403e0018f29dcdfef483220dea8065d8b572e80c653ca992add
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:5914f71e37c815ce2567826896e051303bdef52fae1acf8d02e672fc24c7eb9d
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:2f1a0a0803b2f5118b167e9d9c2e86660add5f79ee6f47044f63b0e8abe0b75f
        - registry.redhat.io/ubi9/toolbox@sha256:ea4ce8cb8f59cf1b0709f1606d7cab074c3806d4016964eedc0555410cb5dfeb
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:b2c2ea9d35edbcd16e1ae559c88a453129b877fc049ab7a7cd6c2ebb8f0bcb59
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        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-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - 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-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        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/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:90833e85e0de3d7de870074c8b04319cd11b913b9652af6a5727aae41a91458c
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:9c90873fbd5af8fac8efc3c7c27fba742a06fad2d47f336319dd05d2b116867b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:987c768c0688431a53e48a80591f2a41e074994169f9e691b28b89528d8e736f
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:92d9e4b53d580df6cc1f14a849b477749a1306941a2e8f9d1b6160f4911c3cff
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:080377d42d782bf525b4072384d0cf8409b48019b3748ca7c855f340bcb94251
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:cb711fcb32b5ca0f34c4e3c67624bc4e035de4247617d988a9e841fd58c1c911
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:06a6d5cbbe80d49bca9e4db9929571a69e35ae7951fcae84dcd6460f7ddf622c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:850b78a201effcafe33705dcd2670f1c470d8b46ba6e307032403627b55a7cfe
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:df2edcaf4402b11ce24439263956e3b0cc43efbac2fdf152afacb1a398dcc59a
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:0b8665e8978deb73be2cc65830f08a74a5a48f3e3ee7b2b817f7bbacba257d22
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:68e1331f13dfaf6641a1e7d54f4cf29c0ef42663abc98b6dc69167892d2d8adb
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:1a6e29214e06a2665baadbed598ba758d6141bfa522984eb05f05a80558a403c
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:5f39b11f0cd6db2d7d6e51ee666c030e2643aee92a090b49656c1e7dfd8a5430
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:889f046b255b13d99801108588d3abf577611b828657b5240a18ea21f0e3cbbe
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:9799003449bfb61ae8f59efd2a611b0da3bccadd9b20cc1519f6c9279d085337
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:eb4da3a645b53acfd6ce8758c043ae19b4126e62bcca09165114a141c2c8d014
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:1c49888ba2e9449c04d5588040c099290fce4793c2ba8874c1037316e550d6e1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:b6ecb3858c201498024e3bfc4a93e630699be4b1fdc3a65fd2d70e4b375eb9c2
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:ab8792fcd16b1aa0065444ba54335cb3e747379740c3ec2d56beb46ff80cb044
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:91525fac5fadece75fbdafc40b94445fb92c88cfc8c2f06b596f8c6377e59c9e
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        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-cni-rhel9@sha256:d0ab36246c556249b6d67346eb0c72ebd22483a6502caa0fc75112a8d327b053
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:f16cd8a29ddcbb3de77cbfcf7e1da78e42cc0c1c502132d477a01c52689cdf23
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-operator-bundle@sha256:f596dc9323da89f5e45e71192f0fa698b7bb29b8205eaa0fc1659d68fa7401f4
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:ea9372fabe06cd8e65ea7b4567ce3c8fbddd9d673dc34a12743fd95c548059d1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:c21481d6dae58b82dac93b1b47b9d9f53a30617fa9d930a0b5d075620cffa74b
        - 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-proxyv2-rhel9@sha256:cbd6bc47341ab8618609f89d063552e17232541c727429855c01deab73e4d06c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:e3978aecaafe2678355e21a7303f8620f53d8b774f6592f10527c15bae957224
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        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-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        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-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - 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/istio-sail-operator-bundle@sha256:6cdd4499ffcf0843dc9cf68a15654a995514e3f97418e6aa06bc50271305dcac
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - 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-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        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-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:459720a287d839ad70886879d8089d821a2f98dcc32a5db5732ecf18a05b3fa6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - 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-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - 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/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - 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-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - 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-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - 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-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - 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
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        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-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - 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-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        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-hub-db-migration-rhel8@sha256:a180db14ad8840a766a3cfec7faf94ef909a079276be904b4d1064f8aa8c0ae4
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:bba6ba57778ecf3f5421a2eed5fa0d1192a53e5640413ffa83e6553296db13ea
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:d60baacc52945bb442bb8b78fe8848f4a4f6e7e9a2818062631d174db5f31c67
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:ffcf1b0e3215b8e2525be0836d7c727e639b64900954a804ab2a58f9bc747943
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:f3467d9f19c40b5c70659f0d22750e603dd7cd11cdcc0b81310a5d2abfbffb2e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:38944f69b37bedb05903dc14c58415dba21873d2dd9a0fd2084cbf7afd4d5fde
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:09f162c742dce25deac02bdb5395a7fb714f171f924471c96f24680f95ddc975
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:a69dc4520666b54d621f1aa8098c1457b2d5d2db125d612ad028ddea1a4e53fb
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:34a3c32c391ff5f810f0c84ff3ff5a729c1a12245f4edc66b4b22bbf30ab1600
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a52bd29991a8a54853c938725162ee832f95f053b149b657bc24358f9aa0a1f4
        - 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-cli-tkn-rhel8@sha256:9f26e5a8d063f791d355481b54f02f4394e4092c20606e5bfcc604c669b995ec
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:bf94a5e27a3a662a4a35ddbca377e4c311b8bda45748d7c4cb5549ac46d4f4a0
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/rhel8/skopeo@sha256:e297b84ba6f1d5eb2c37e2c3b31c9a9a4c39f9590e7d7c32388165245bde4835
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:cf566538843704d03a05142639d58e8cb074aaf4bcdd03c0585574c3bc960496
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:e72a7f6fb660ad48e275a70cd43c085df4b87405e5e8c85d8665b421551c4d71
        - registry.redhat.io/ubi8/ubi-minimal@sha256:6825946f10e8c81586fa7815c4f06016af05cfc231d921ec9699402a6655d201
        - registry.redhat.io/rhel8/postgresql-13@sha256:3903d562425dd564986123280dc076548fb3d24c74138dcd857652f53052e0a7
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:8f0704328fef0e6031088290fe47e1f7625c4825ebd2e4edd9546279f87c5fb3
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:8709d35b571c163ed6f3e24b6e653e7dce8ee80f0440795e50e69f0ecfadf304
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:7a460bc5609afb2865e20f04b5c0e86ccba3c9a31a09ac14d799556d4b816356
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:9d1436c1569dfb8dcab5c0ed2d675fb4f8024fb3ef85707393d1091cb5203749
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:3cfa3e3ad23f04e75417c2c0fd88c6b0f2b69361bc6947cbdffc594ecbee6d28
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e53cec5cde1f23ab17082e3326e3328468dba3ec6c0462f06d030e0b1dfbd8aa
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:bd524c790588652e11fe8ba07ea8df0a2d483840c9a84fb35f3dd3e8157233a5
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:21214c77e4a525e6eb0a8bd0e77bb7ede120ec2030dd198fe00ff1cd79a58239
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:2077cdcb34dcd57972f71b403cad02ea715e19a7096e95dfac228168e49acb15
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:0c9d398a73708b5877467547ac6fb1e9ccdb65159c454d31628e93a59da47f3c
        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-git-init-rhel8@sha256:f6232daffac97d841801ca3b356383ae73dd3f74ca6d635475283865737b7862
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:ed20e74c11ce0ca33bd832bf29d6311985affd67bda05f8cee045d8732d235f8
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:c2193380a48239c024d9dfdbeb45cf2c7f462ecb8ce23fa53c5fdfc162bdab58
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:f7fe262df4d73aa598d63ef4d463bbe84009e784d0bd2801de1131e6ee0f3ca7
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:c45a22f5660fe2228eb55d50f061fca7854e52af7c6600f62f8bcae93c15edb1
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:2f76b11f048e51d0e33f997c5fbe0f9bf4096a4a9cd97d5d6d8084fc10722c03
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:fcf8b863aa41a702afef381a087f4daff7dcad1e34b03d2c0b0192bd5365cb71
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:e73c1fbaa426e3fc8acda26a38abd1d25de1f933893479269375af40da53dc5f
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:d92d48d42e42082a29d61a0f8b8ba7dcfd5e8ef0a8f66ded0bedce24fc81be33
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:98bf4813124dc9ada33da9530678e239c7953a1302a6cf9dee2277c276fb5758
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:8a593c1144709c9aeffbeb68d0b4b08368f528e7bb6f595884b2474bcfbcafcd
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:b37a8c805b43eef99b2e7df017622965eca79f0f8f4b1f05917fc2313dbdf40d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:8723ee8cf1f41a85fdfe2699b014df105db50be7c995371dafea698ade65c91c
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:1bc3273f138cd3a48610df28c87d05fda126d8cc29d2780a0c4738ea9bd3e85d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:702899060437993a77a038c36284b99358caea038c44ca5a94f892233bf85b99
        - registry.redhat.io/rhel8/skopeo@sha256:29465586e92ed04d2878dcdeda2d508c7e8e7539762e10296b52d631929960aa
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:46a680ca7416fc85ecc2d5c7fff84a45b493d02f10c087d3088992e6475f0ee9
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:91c836b13d3b9d4dafd4198148172f3f42122f9b38bb8be53c26f5b3ed9cf045
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:9b6bd5c8a5da471bb05b4bda7a4ae3a86b9b1d9128971aa6ce6f4874bb6dfa0d
        - registry.redhat.io/rhel8/buildah@sha256:aac6629389db17e99894c5bee0da01d4c8065d11d8c6f6e1602f9484290baa70
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:b3642afe8e487884ee62dd6f0d22b84627552afeaa61a3f56eada858795f1d5b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:14f4e749cdc026dfb19a53748a4eb64b875d7dc7626fc0b30edef364f3dd612c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:4ccbc6bb8fadc5ffba0ff8b0206031b51db1c4acd7c0d8bbd050bc73975d4a2e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:3445ab65ae506460e44f304df03c249ce7283c5fb7cc2d75b660d43cccab70a8
        - registry.redhat.io/ubi8/ubi-minimal@sha256:f729a7f5685ea823e87ffd68aff988f2b8ff8d52126ade4e6de7c68088f28ebd
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:fbf4e6f210ca31b8864f84731b5f5554fffc404d172c0207fb3d5c93b09c6c13
        - registry.redhat.io/rhel8/postgresql-13@sha256:a92a579f1aef66ac188d24fd489c456a1a3e311d95dcce652da6b81e28fbf725
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:3e80a493aac65370228ff32643e0fb8418f6fb576934e804fa1c65b38cc3d203
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:017455cc1c5ceaaa1034f197d0a98645aff6d83fc71a4a5cb9961c3f283dc239
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:e3a11aee5518641ad453ce310b159c52d827f443f99eb61a4f5427699c1ab16a
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:962780950d1ef7ebbf285ee7fc7c2d8fc9af1b9cbec6c29dffecc133c8933afd
        - registry.redhat.io/ubi8/openjdk-17@sha256:e8cc2e476282b75d89c73057bfa713db22d72bdb2808d62d981a84c33beb2575
        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-pipelines/pipelines-nop-rhel8@sha256:de0d59029c02e5e9e6d607375b9b0ab573807f6531128f13d2579067767e8a3a
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a27f43b86d2bc10c60de233be4e223b549d11c3aa7de390e485a79ac3fb4c533
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:945c1675422507e67eca06f246aca9e42aebcb2c874f74a284b5e5037f073082
        - registry.redhat.io/ubi8/openjdk-17@sha256:632e78989471859ca4ed1148b951a911f7e3b6e6516482be20967c4171612c55
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:ea97b4d3d0882e9a3f5a98c6af3c147fa96de92e40710edf380b58442d5a623c
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:9a230bc21f8ef9ad37398922498ace9e6b13f21adcde2b00f418543919a9fa11
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:752baa0d02ea097bab1d014b623b8161ae67317cf2f56d264bcd5d0a270b096b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:a1dfff15c9eed4dbefb484c76383073287de6f5429c878254d374a56ec7099ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:c2ca6ed42b7d7dc5d06be481e0f3b5da6c9219999a6f81401d434c0d1cbd9bdb
        - registry.redhat.io/rhel8/buildah@sha256:5c7cd7c9a3d49e8905fc98693f6da605aeafae36bde5622dc78e12f31db3cd59
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/rhel8/skopeo@sha256:1dcb4189c92da21ee58b3ca5433615e0208194c8412f7f1fb45fa491179aaf9b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:914fe1fa1d806cd31a755905ffaf0803995f494fcd86690bc9b487dcd2a5b6ca
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:9e9c168af3b24b4f084fecf3bbf07f66bce0fc717641ccaaf07496b0a8498925
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:8505951c0c40957eb65d551bc742e82642edf65385b6ca67bcf075036c42270d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:eedb4553f0be74f81910dbd1bebed0a4a07eaf4dc47ff0551a8ea52725127b6c
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:ab01a135f735a75b2b1efa184e1d205b60982c7a93ac48fb48b8eed66b54601a
        - registry.redhat.io/ubi8/ubi-minimal@sha256:a47c89f02b39a98290f88204ed3d162845db0a0c464b319c2596cfd1e94b444e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:fba741840f20e079c720d4bc4a1df64d78785798300d0958709732299ea321e5
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:a3dc7856ede01459cf74c9d17687c0c0ac5a404a6891266b12e19373218d728e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:42ab9dedc88f3892e0712e7868cd21fb62e955f442aad6e837638fd38dd916f0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:4037f8eea26c4a4827d127f99a40992109a19efae30ce9d14a75283d69efe919
        - registry.redhat.io/rhel8/postgresql-13@sha256:a308263f5d1071be8ac5c13fd84b40609988ca30ed56c22a8bc6769e107ce09b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:6b9964bd9be63c5e32d56cf7519c1b7eb65303e04bace7526873d4de73142eec
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:aeff39254bc40092974781fe847a295a1c60f226f3f9ae2b7f2cc9259229c3e2
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:6acc31f179b08658976cddcb9ef42f377edb29933d1d83a2ecebfd455bb68571
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:b6845e614c60e924061a52cdc091d0437a4dcd2d67d89158af2efdc930469b3a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:1658226f40a3f10d9f6c7776cba14a80644af4a56452d9617e85854daa671223
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:c701cca096953103ae21d8b0a4b76c39769f7458532fd868c798a5af2987439f
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:23eb0e3b25d61d0f4fabea8dd954bd3956e3b7fec634e32d00c6a108e88330f9
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:783174ac82d0d823f886d5fd1d89baf8cf467c13d651ee689a90a2c1c84c54b8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a6c5e95bf9b42ed8d6e20139499daf70a633ab35eb76cca3eda9fd380f396602
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:665f689731ca03f753c3c2dc4d4ae3f6bb001c498e54a6ef7b5d92ff00f2e0bd
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:fc935150749190a1a978b7b59769cfa2a9e50577064959ba619d601057bd3355
        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/rhel8/postgresql-13@sha256:757d8dd6f243717d820846da7144a49913f28f223b74ec305b2215f54720f8a0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:7c22937c957b4f405bc014f4b8210f88c1e5acbc7fb59a29c9ee8837d4e0249b
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:a4f1c5397fdedd9c820f51e0c09d6b464f2821740c86ab61772aed14cbb33ae8
        - 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/rhel8/buildah@sha256:6d2dcb651ba680cf4ec74331f8349dec43d071d420625a1703370acc8d984e9e
        - registry.redhat.io/ubi8/openjdk-17@sha256:e5fc9e34382da41b10d4ea566639d31707493abff9e8de81f5accfd66876409e
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:56337f8ceb6f2cce84090f9fee17bdc9eb87dc4e61c36c6353014c0f99cf6273
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:6fe1b45c6ee81bc55062ac6a6972accf5546c69f78db97f53c9b8975426c35eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:e784efdbe32daa310e7d3c7d4645613814573d12ee1dbbf74aad68cfa28761b5
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:bcdd6f5a185d4969def2f806403fcd08527bfcc9f4ac0706b38bc358d1d64778
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:aad40e98859844aedf0c719d7305baeb42c055872fb735c54c378edc014d6e31
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e9352d062e933f23277e81333b42fd86ee767e9fd273c8d4528ede410b6d7afb
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:fa2bec9b5cb68fccf9dd331881ff225abf6704973ee3b283e2b5f294aafe3ac2
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:b44ee90952a1556b9db646795d415d3cec2d1de7e01356438b53ba44c09988db
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:108160e0298da3379d4277cfa865c073c28fc3b25f5ba3155e427db5b50ebb46
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:0e4eb22c1f8e35014fac62a820895d6934312278d71a23bc8b4e1f5e200b6bd9
        - registry.redhat.io/ubi8/ubi-minimal@sha256:c12e67af6a7e15113d76bc72f10bef2045c026c71ec8b7124c8a075458188a83
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:58343c719d9c4d536424a55e280cc3f67c2bff6f0e0b1b56678f555d5c12f381
        - registry.redhat.io/rhel8/skopeo@sha256:7fd65200b4847fc84fba0466519b87f915e28c0e9bc90d3022beecfebffd4af8
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:de9337e8fa647d59727a7bc4477c613607975a493283037b5c81ec908da21902
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:ac3087bf9f4d494518fb19e3d95fe0f942fefa69ff9f8b2a82fe2d59c2bbfbf4
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:d2b4ad8837421df74485f6752832de75e6543940d8c32fa18811d7878cf4e7b8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a34bd66f9eb15cb09f7342d7561f23697039a8521fbe76d0f5104d19bed0a05a
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:934563cc735bc0c3421ce444efdcb3bbb38c1a42a2abcf49294af30e7f5cab8e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:115c28f9574540ec42be6e3afb93ea62f4d6e54c7367e86e746ace712548130e
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:245e5f77eef067b48f7262de04485b4ab5f195736dc128d2c574f32bb05d3b2d
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:bf9071d0e144632a0acd90ddb4d2e1ecd435e1904e22233a1e1978cbe3a0206b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:b614e12432bac989bf789ac84ec0a2bf55f5cab9ecd863432c7d11e4e176def0
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:cf4e3a23de646038e18a170f1edf49fa75bb72d49e9308511b680e24c795f1b0
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:d854cdf80b03566e138d1530e0200e7d9a349524d37ce0244f8ba97f6af3156e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:4cf8548faf20fa56d4ec698975bb90bed4474661170cc51b6892a144d0407497
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:8ba6e6deab70190b55ef2dda957a8df89e34bdb03f0671ff2f52c97c8da6081d
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:37109f6de75dda750496f6668164d0dceaf9db5278e8c034708436f39de3276e
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        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/rhel9/skopeo@sha256:d077e35100d6d7b3795f8e3594293dbf8b65c6bc18b909aa555fe56f048b356a
        - registry.redhat.io/rhel9/buildah@sha256:6886997da8c92214e99e3e8da47a0f08239172d2544b4edae058d5cb018effab
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:c20ab6fa719506bca942669ea84b113335b05df3ed275257b88be234cade7c8d
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3964c3248dfb1006ea9a46295baf7f8cfa71952d6b9863b52f87e8f3d7863b1e
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:fcd5fd10de7334bd59a8da4997f91008ced95c6cde40d56d50f3b3e32c0f19e1
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:0a60ce46c05256c74f770901e0bb79ad89e88ba882b643c1ff7b2a1738463acc
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d72842a7c6a1e50a68576c93f60047afec801cf83db64d7d3e34b25bf3c753ec
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:6abc903c784bb455e1f2fde45a48afe775239668e1d0dbc1b3cc6afca3c0b477
        - registry.redhat.io/rhel9/postgresql-13@sha256:ecd5a5583db922c517c735797db3fca587c0ef0b410e7dd494ace2267d89cf05
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:2ba6782af0d7e5c4d623de31814f43f4f7c3c38d09b57705021957d334067f87
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:8fec8e7a8b3e5182c67104de4e3abe32593b682c4a8986d1e9ab835dafb95ff4
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c90a9c3a20f088241980b76986ba4f43b0243fd6d94a826fa7b5888e01c13093
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:dbc462cb50385dec3a220b5d0caed0e0211c166182026f86e3c51a1351ba0de4
        - 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/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:96f5e1922fb9d6dc17e271576dda9bd032bd6dcc04e7496fb15a2f6b5871cd67
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:1b57b64657eca0002145100bae262a19f02eb40068e07994df467e28a1618f90
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:8ae0ca6411e4fcd5c0605344bc6930cf122ffd80e71199509d58423a8b41de1d
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:409c14649d8e7007d4b72b6feffb71dabd26322bf2a7c77f5307f2546fdfe81b
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:eaad37453a5ebef51c28d4a068f56e9f394e710c72bb86342cd2189001420836
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:b550a8bc2a87d07a5b22a3ec3fb83efd8eb26ca6e80d404f2e453cc9b8434da7
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:b9675b22bc8759903472c1eb0e03f90c75460f02799d894294c161641cad9414
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:e4d49cf6a2fb8b3585ecfe3b3da3e9de090fb99de3dee2da0601b1f6b071173c
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:e27a30d471dda4983a5b8192709d283a9d082558f3caf31b30db2214e418b017
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:36a4c6a3273f2371ab5e679f1955221c286ea753e29e6ab8da7c983681a68f02
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - 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/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:16d799503674641d4690822edc9c399c61429ccd31621d295eee4a4d1ef1c076
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:e63d956a0534f2e726301e00e877c4fe2f34ca4559e59d2df7567c04ded311a3
        - registry.redhat.io/ubi9/openjdk-17@sha256:5d619e202695acf76a5f32c07ace6709f5ee5d3999bf977e1bf95ad34197f44a
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:cd28c2c90dd340324b0d8709640cd7636f28286114b0023649b6e21be13e03c2
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:86ea94b12e8923035e3e4f39b6a53b3ab32c5f77d7eea170aa9b34aecc6f8577
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:776d34b0ea2e35c11ad4050e6b40cf4b40c84dbe0d5f3e6ad669c494a210ea8e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:e2b4c3b505c4b5aa36f8a5e661389b0de4e799c74c2c7f16a065e5522b438e89
        - registry.redhat.io/ubi9/ubi-minimal@sha256:ac61c96b93894b9169221e87718733354dd3765dd4a62b275893c7ff0d876869
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:fa5c456fc91319c55fac9a011dc7bb32ef85db293c73d74436e903b76ceb4349
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:80d441ec5d07c5059277a3a9173a35dfc0b8372d6e4d7823514131a94bae3fd7
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:8b4bf043e0fb237553503d63b129c432600bb4e65b2096b246b257b404b42be9
        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-pruner-controller-rhel9@sha256:cc5265e2e163446554453d4f5db1cc733758b450c7550db7b7caf9ede474aeca
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:a585790aa11f5152c8a55ef36f74f731a34b2eecccd3250e5ef3cec8ec398409
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:84450e886c5ce68f4f594982fab6140faebef5774339226b0be8d7e70b963fcf
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:ddbab8d6b9d1239451bf695276c8ddfe00e78cbb9ff4fc6562a9a5a2924b6082
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/rhel9/skopeo@sha256:993f799d58c48151ecae7a84e63860f6c0039e8e18efed5ad67e7752f4b7e408
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:cb5958fdc6661e23f9957d53877a6f401af5a2f64a1305ae21579048846f1f70
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:b49089d2f582a7a9b954a75a48c590849e79628305b37c43a0c5ff795019635b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:bb5bd9f505d0eb6ce6573b09898c2ad49f1d3602c36b380058b489d9383ba60d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:38a58fd012558192cd779ff8ac2ef3f02b8e82e2a1bcbbb9d53822c9d8890afd
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:95816d1f338341800c6947491d31d6ad826e56e821ad3ada78718df9f2dcd103
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:6a947bae0c64ffcf7c2f9d71b5f18d858e017ce6122b2499c555850fe7fe1fde
        - registry.redhat.io/rhel9/buildah@sha256:a6e04c061b8d261dba85d01dcb64d3f7dba8c0b9765e03f05ec79850a248d75a
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:aab3b001f60510c73cf475b2c218a7aa921cbca99b855d28862c42e83d610ab0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:67334d9a2a0bee4cfd62d3e3c26608df4f802adf8970981260e4051b4fb3d055
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:1fef4759b410625fc797a8ecd166c20ad09312abfccc1cb941e946cfdccd2da4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:7eaab4455c1e416e4e0ba5f3e0e60c5a46aea23a939968e15eb6a953680a5f2c
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:1141200c99c69bbfbce4f7994b7d8b9eca36f5cc395acdf866233b3cc35be61b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:d21cc7e094aa46ba7f6ea717a3d7927da489024a46a6c1224c0b3c5834dcb7a6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:a802bd8ea9104e77b6318bc3c05269c32c6435a696f62084da83f68b9426294a
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:4f606f7cb607007573f1023408329bdbfbfd979dc6bb50ac4af0ae20a33bcbee
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:a68bc519e86f1316bf2c536aab16ebfab329cb51b07cd02d3021bc8332c4c97c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:41d669fbe8bb48481890fb9fb52de9d4cac98cb74e6a6b284d046a8d21b06e58
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:f151dda38d7fafe2d72e2cb064d074921c6b535543f29cfcf66405ba65e38ed5
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:408a3bf7a43068cbf2ef9af04faf3df161ac39e53446f47d9fcd083499a9e2a5
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:66588ef48047d6589b7c810398ca16032125174d7cd9eaf1d6ddebbbf82147b4
        - registry.redhat.io/ubi9/ubi-minimal@sha256:14f14e03d68f7fd5f2b18a13478b6b127c341b346c86b6e0b886ed2b7573b8e0
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:e1b99c7a287125dc265c536e5aecbe9eb4e9981ff030d28b9b127fb546a45944
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:e74f92e066f47a3eab9467f2253c3b85bc34fa41e2443e033b5e3470849b0d16
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:49cb3cca3f9102384c96e93108d09969df22c3858b1933ecff9fbe1d41aed981
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:d49f6cfcd815f93d0f1fad8a569bc8e52ffd86ba909530e95fdee19b0a1ca784
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:6a18f8d771900aa480560d1809c789d5243c4f6d9087185c610d9b8834d78625
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:498238810108939ead8df1158c6ac892ad5f0bfad57fd2a893b5ce53853504d1
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3e2343b6121790f18b8d8868d8492af0b0541252f50e290f585f467c61660574
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:ae34ed4ead57a26e1f65dcf433908ad75c5bcc243fcb2fdc3b4c211171c40480
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:18bb4f4139d8b9f041ec5d38e5350d72290715f8ef235543365ca4b353bfa8c4
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:2d6640e6b91896ff455ab8e2246f166a3cdd9c53dfca00b3919f646f54a11f9f
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:5bfbde45a37d8b16cf0ab0be8f636c35a1d9041d6c8f7f611fc24a551eb890eb
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:40a099a9073bcc2f8da442d8225be03c8636e456c548c93e1a8366677e845830
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:655a73b61984fbafe9194629705f51ff149d43a768a5a1c103045582eba8f2ec
        - registry.redhat.io/ubi9/openjdk-17@sha256:cdbd64ba1b7826d09bc180fa19aa6fbc09ddb5bff5e02b7e1351353bbabebb78
        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-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - 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-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - 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/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - 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-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        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-local-storage-operator-bundle@sha256:7f14582c0d63f02a3ad9201d8c90c762de2f131d62ce3a3b201f7e8ffdfa3153
        - 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
        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-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:1d86075469312e84f3d16379efcd6130ec9e8b23a1343e3945f071d82beff6e3
        - registry.redhat.io/rhmtc/openshift-migration-velero-rhel8@sha256:07cafb83ba90378c1fa60338cf951a9d7145ec245710637e90fdb508875dcc45
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:a539064234088a4ee13b8a9666ca9507208fe38189ee9b8b673a38a58aa75599
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-gcp-rhel8@sha256:035855c3d4b32a29232846d73dc398e81f941fd90a03e33241ca06f6e80b2204
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:f86e96edb0418811df328debdee93b4a51cf7f651134ee35e9c50b9dbfc29fd8
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:31b3658dd79c18111c21e99aea52cc198f8e95b458a1a4f8d2bfc4d21e9bdacb
        - registry.redhat.io/rhmtc/openshift-velero-plugin-rhel8@sha256:92a3162c705537147005a065cdddbb410e1863d80c08d8b0f27b7ff5588500cd
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-microsoft-azure-rhel8@sha256:084f1e54ef0d7f457d5a7cfc57b567ad8d85237c12f707c82f7a30a54e3652ba
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:1b8008a16a0f53c09ecc5a219964194689a1aeb01acee8313aa49a9c26259429
        - 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-velero-plugin-for-aws-rhel8@sha256:c001dc96a1478a58f30461ab018e40bede13a78f3cdce869a70dcb8b9bba22b1
        - registry.redhat.io/rhmtc/openshift-migration-velero-restic-restore-helper-rhel8@sha256:b137e1345038c9e566767f24cce60c03ec278f5a2efc28fa08e0bd8bfa016486
        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-log-reader-rhel8@sha256:6d8c28c61ae5cfd2b870226f150248efa1f7ea4c538c5740587cf3f046ebd5d0
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:9b7b4fbde975ee49c20442b7b410b900f60aa2856856f89ba20d4700716bf49d
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:977e9f27271b53d72c53e38f44d01cb1fb7e8ce57ec715b8e7efa3ed66d91118
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-mtc-rhel8@sha256:93aeafa4df87367cc6326048489a0d7642b9ba13091c6ae4a3d04d45a7e6871c
        - registry.redhat.io/rhmtc/openshift-migration-openvpn-rhel8@sha256:ab050267fa89bdc400ea9ba8434acd11a0cced415e5d52512adc2db713bcdd2c
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:da5bea3530580d60fe593f03927ce2c561155fa914961aa4152fac8fde3b40a7
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:84492722125eab381eeed49aaed92b44c763b8f06cb2e2859031f486df4437de
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
        - 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-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/kube-descheduler-operator-bundle@sha256:c0ebb8c7fbaa325fef3d530da8bee7ea8773aa082c9b16f174c41ca4465ced24
        - registry.redhat.io/kube-descheduler-operator/descheduler-rhel9@sha256:e9019ca15608d3d48a68b97283ca07db1260bb92bd81a500f7d987a485cd7a1e
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
        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@sha256:ed68a0574ddeaf7d676403cd843f28cb586894f35dbb3ca5e06a5264bd42f030
        - registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c
        - registry.redhat.io/openshift4/compliance-openscap-rhel8@sha256:867c6d4205653d8a954d234cbaf470313009eb983d4f455fb45f49c4a7764422
        - registry.redhat.io/openshift4/compliance-rhel8-operator-metadata@sha256:1c06868bce1f5d7145ef658bfcc284c44011aa24a17166aa124547b38f2259e4
        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-selinuxd-rhel9@sha256:3278d69814a8d0d1e31dcdef454c24828aadbb468a3d5d3e15910c76481765bd
        - 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
        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-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
        - registry.redhat.io/costmanagement/costmanagement-metrics-operator-bundle@sha256:9cf11bd854c76e2b344c0072ae8487acde31f6fb50e2c47937f95186146f40e6
        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-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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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/ibm-bamoe/bamoe-kogito-rhel8-operator-bundle@sha256:e0e7fc3a69575199a6fcf93985451dd66a5eb7d1ab8caecf059d7d52f3953dc4
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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-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
    - 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-istio-csr-rhel9@sha256:9ea2c29a384b964cef14f853278821df3cd30320f25afab8823897192f67fc7e
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:cc20a2ab116597b080d303196825d7f5c81c6f30268f7866fb2911706efea210
        - 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
        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-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
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        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/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
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:0d2edaf37f5e25155f9a3086e81d40686b102a78c3ae35b07e0c5992d3a7fb40
        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/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
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:5eeb9f00760e286b2088fe4384bc0de5b18178fb3811796608ffe98d1100312e
        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/vector-rhel9@sha256:011570d92a596fd2895230b19bc34a25f8befabfed6b7ce2f1e2bbe211391d22
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:022747902d768b6bf95a76c7c0b3aa63af356566b8411448cf64f87fc31a4794
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:057e1b87e9b9419d35cff1ee0ee8e19bbf12e6ecf3ff014206b62ca44e70eb07
        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-rhel9@sha256:8d7407a15dee92f15e8c62ef8a23c02b94bc59d1dd6595f9dd3e05f5a01cf9a3
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-operator-bundle@sha256:bac746437332ab19a056edfc42148904de392c787a79dd77c2734b2dc34982d0
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
        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-metadata@sha256:87448055a162e215a4d4982a8494fec6e7cc59fe6704494ddfdcfea076a2100c
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
        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-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
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        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-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
        - 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
        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-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:088dde6eb9d239a7a34b6e47a1bc3c3f1f74aabe764744eb9554913181b4e0db
        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-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
        - 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.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-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
        - 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.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/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:a2e2211f218d13fea1c2bd232a87378f3d9f656839e48c72d93f4f8afc3ea702
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - 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-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        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/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - 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-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - 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/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:fb284b670f3c4c28ac3bcc6a16d20db5ec38165750baf6a03f1d3b7cc316027f
        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/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - 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-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:88d59edb37c5c1588e22623e1a0c8c2e8bd793c52f2f8fcbedf8d6c4697874e8
        - 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/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - 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/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - 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-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        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/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        - 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/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:e52d16eb8343528b0d92860486ca3944e6f49fc9d8a2057c247e387bc3685abe
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        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/jboss-webserver-5/jws5-operator-bundle@sha256:bbd477f0b3ea615bb0342a11656be719c61e1f9bccb3235e071d8590944334dd
        - registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - registry.redhat.io/insights-runtimes-tech-preview/runtimes-inventory-rhel8-operator@sha256:58e01d11c3d30abc5b0ee3795511bd04e39aea21e2853b4f4cc6d1c8a2bd7bb0
        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-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:0ee0bd2449f183277af845e312257b4a1ced4de865831b15e1758a397d8d29eb
        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-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-operator-bundle@sha256:fe40f5abedd62e8ac2a354ddc7e81e158615682c753ef942bca238dcc3beb4c7
        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-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:4478b8a78bdde23e0d40476f8ad9e4bf0628fba7603a390e8de7e6a319abc1ec
        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-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:8b475114a5f77f7c041509a30246769a5f9064510724c8fc99ac29164dc3a0bb
        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/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:73d91324ccc995e9a6db525f194bee340c17dd624ce520c767ea8fcf2346f786
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
        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-bundle@sha256:d29abe14abc67d8836cc6f7656556a0a7fa8f4a8eea3f78e40265b339e7430f5
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        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/quay/quay-bridge-operator-bundle@sha256:7cace73b03bb02202a04b6026eb9f7323610fd0ccd5ba18a6d00fd66577a96b4
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        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-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
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        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-operator-bundle@sha256:fd9c08f0a1455f7c20f3ef00983bd2cee495f6fbca7e30e3aac52512d71abe42
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:a4255931341242cacf44202192e8f69805cf359282b1753beb7933ef3b088dd4
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
        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-agent-rhel8@sha256:a8e60d9f63e2ed0cf1e27309aac54014e3f1efc947b51ca0a99376338d220875
        - 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
        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-operator-bundle@sha256:783c2df43ece311bcbaaf30f33c081608e996a0f651895ec0509bb73a6a1f590
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9@sha256:c3b17e2ff30eab6e64e8fec59da37f05ec65d91d8d76086a9510372b20eb78d6
        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-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:35498d3e82e157b35b5f2270033ddc88a521453ab90c3b95e2a6a4cdf62c21c4
        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/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:747108b5f119ea96ab3c8f6d7035b1e98aa8df879ed772c94459500b5a715483
        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-openj9-11-rhel8@sha256:c8607d6538a7528e27e6ecb138e0a93a03b3c9fa1f8a9a5aad3fd9f4a6814448
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:a7641fc5f4c7aed4b73d7d98ccb58ef64cf14ab16d72378f56dba3ad4b8714c6
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4d8057709958ef60bcabdcec52f05eae8df121fd3f4762c3218abca38130f638
        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:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - 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:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:111d1f4ab8f006386102d1bec4cd6a41b446d9ae401a43c821b2f318c8ba74c8
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        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-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:9bc0b730570ab55fbeca83075949f4caa96ed5c37637420a59cd4a7db01ea840
        - registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6b78aaf15558c0522d22ba3003244203e6d39e6fe737c3075e30de8763218358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:0d368459c98c5788dd55d2add5b4b7d438b9a8c814ea8aee2222ea956699cbb6
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:11bfe5c8109d26164cff428232b2001ab8df464f14a382661b936543336e2960
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:879f3dcc24ffe795472779f777d955666ba4041c17e717d5e165cd7f12d7955a
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:c25e3152d6a6b6d5cd86d311bf567e594b9948440785209cd8d7986076a5a10d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:ad4f91f984b4b898012963d52e6ebcd166ec03e76e26eba3191ecb87f51fb18d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:1d5525d2d575dcc9d90da57afeb5fb310edc28d97d7ba55290db6bd152a34a95
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6e1766784b684561666134d41dca5331b80d50e63695fe7b1a1d6d4cdb73f0bd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:a711c50e489995fb60e5dec23ce286360743feda5066e4a0861d448aa4f2e903
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:5656cd188d054551489d45be996266d03e3faa8814b8bfc0f360cf0dceb83cbe
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:2461b1da4bea1e25b69a7bf8ef2173d905369e5a779134fa5099677da10cd8b4
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:48cf13e71953cea6f62354289f0d8ece7a8a481ee0bb2c76eb9352d438db9ca3
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:f59ae21773dfc207454a709ac5f7aad2be6a6a20ac88da26c379edeed54537b8
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:4b9bf39d2ff14bcfbd4628a399093703d87a2b2b9c8e74c3d7cfdff4b5167fa4
        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/3scale-rhel7-operator-metadata@sha256:771bd8187990f334cce038a647e9c0fe903fa7519994119bc995ccc7cfad8b6f
        - registry.redhat.io/3scale-amp2/memcached-rhel7@sha256:6195aec4725b71f46a3bc2982300acecafc9c4aabb4ed1bbec06de9775d49694
        - 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/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:6c53e72c31d1a3e13aa3ea835039f30869e465903262545463f790cb36ef5241
        - registry.redhat.io/3scale-amp2/backend-rhel8@sha256:3d5f1ef4e67f97cc9cf3accf25033e176fc59714236a5ee0f022c9eb8be7a4b1
        - registry.redhat.io/3scale-amp2/system-rhel7@sha256:13685f7ca51ebd1e21036fb08b3c2089a66cedb63683dca39925ec0463215fc6
        - registry.redhat.io/rhel8/mysql-80@sha256:158198936a7f7896e0f94133cd64c8e8902e4f86e670b56b64ff02acfd9c2855
        - 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/rhel8/redis-6@sha256:22431acc2c991b6ee6b4de0219366dee6ea745122a49a0175d5fb58ed7d9205f
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:4f807ee6e885e966853f70e1c40bbc179dc1f994b401ac868b7f2b921f9d17a0
        - registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
        - registry.redhat.io/3scale-mas/backend-rhel8@sha256:7d07caf7b6c5a195ba4706e82f3d28c3793afab99b1a6d5a7020547c48534cdc
        - registry.redhat.io/3scale-mas/memcached-rhel7@sha256:9c2aba45971c924fd55b2aab50ee8e6861a9defd3808b38ff30316727af31f9a
        - registry.redhat.io/3scale-mas/3scale-operator-bundle@sha256:a6c2eff926feb11da27eb9972cb86ee0ef9ca0b013afb6fe6af4f72439d557ef
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:a03a1ae7f01259192b8d7b4ecee6ddfcdc0cd9e2d24a8c2306accb93ee767135
        - registry.redhat.io/3scale-mas/searchd-rhel7@sha256:1426e4bd4aa0eb28b479900ffc02621203886280d24997cd11818387ff30d9df
        - registry.redhat.io/3scale-mas/zync-rhel9@sha256:419eb09d1b165363d5b90df01c1fa10f1f91f03649a8758620ffa49276685feb
        - registry.redhat.io/3scale-mas/system-rhel7@sha256:b0fd85a4994502a3a2ae9ba6a7610c38af64b6cc897efac12feb4b115a484f77
        - registry.redhat.io/rhel8/mysql-80@sha256:7c05e61c0f4f5dad6aeda136e9a1af2f04f4de3c51004e997d4eacae3778da17
        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/troubleshooting-panel-console-plugin-rhel9@sha256:b4a6eb1cc118a4334b424614959d8b7f361ddd779b3a72690ca49b0a3f26d9b8
        - registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:48e4e178c6eeaa9d5dd77a591c185a311b4b4a5caadb7199d48463123e31dc9e
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:21d4fff670893ba4b7fbc528cd49f8b71c8281cede9ef84f0697065bb6a7fc50
        - registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:1b555e21bba7c609111ace4380382a696d9aceeb6e9816bf9023b8f689b6c741
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:9a2097bc5b2e02bc1703f64c452ce8fe4bc6775b732db930ff4770b76ae4653a
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:12d9dbe297a1c3b9df671f21156992082bc483887d851fafe76e5d17321ff474
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:75465aabb0aa427a5c531a8fcde463f6d119afbcc618ebcbf6b7ee9bc8aad160
        - registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:e797cdb47beef40b04da7b6d645bca3dc32e6247003c45b56b38efd9e13bf01c
        - registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:a223bab813b82d698992490bbb60927f6288a83ba52d539836c250e1471f6d34
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:dc18c8d6a4a9a0a574a57cc5082c8a9b26023bd6d69b9732892d584c1dfe5070
        - registry.redhat.io/cluster-observability-operator/cluster-observability-operator-bundle@sha256:a3b8e1f3f8d154095f365ccbb163f2cf3852d6091b1f74773a8b5a2ee5c1cee6
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:369729978cecdc13c99ef3d179f8eb8a450a4a0cb70b63c27a55a15d1710ba27
        - registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:093d2731ac848ed5fd57356b155a19d3bf7b8db96d95b09c5d0095e143f7254f
        - registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:b5c8526d2ae660fe092dd8a7acf18ec4957d5c265890a222f55396fc2cdaeed8
        - registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:e65c37f04f6d76a0cbfe05edb3cddf6a8f14f859ee35cf3aebea8fcb991d2c19
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:7d662a120305e2528acc7e9142b770b5b6a7f4932ddfcadfa4ac953935124895
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:d8c7a61d147f62b204d5c5f16864386025393453c9a81ea327bbd25d7765d611
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:42ebc3571195d8c41fd01b8d08e98fe2cc12c1caabea251aecb4442d8eade4ea
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e7e5f4c5e8ab0ba298ef0295a7137d438a42eb177d9322212cde6ba8f367912a
        - registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:dc62889b883f597de91b5389cc52c84c607247d49a807693be2f688e4703dfc3
        - registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
        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/assisted-image-service-rhel9@sha256:6082629342c13caf33bde021724f5d2b9c400f838b74285a3c2d99d68a03b26c
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:e399861c4ecf3c1910dfc7e2da2b234bdc1ae1aba3a006f28285756edb2c9b2f
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:9b4294ee810cd554905c72fd080c3ead28a82dda81e01210552012e4a8f7dc5c
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:dd7c28e8901e1804e4832b2d3437bf8bc0e4bf7a388a94e6b9e0df07f6eee10f
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:7b3d109adb86a87475afbb76faef4a4131f78ad092d4aa541e1c59bae611acbe
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:45217815cc0f2bc24d5b7ac07019af9a0ccb13f8cda14713422b8b699f3723e9
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a187fc5e6c73bdfc63661b98c05b39ee4d0b3a0e1a210c49d188f1004bcb274
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:db28620adb4c59bc9811dcd5d0a743ce534f24e40165f84af7044a5b9d04b76a
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
        - 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/capoa-bootstrap-rhel9@sha256:1ccf3b85dde18875aa1b98797d4477c7fe725725c5b6d91b4ed21e3e3249ec36
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:ac1c6821b6bf2062144f8fc38256e97c16a55019efdff6bc0f2469899508521e
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:43ed1820a27580f8fa9c80d53590d2b5cd049c925cb57c8c396512bddeed3332
        - registry.redhat.io/multicluster-engine/cluster-api-provider-aws-rhel9@sha256:1e2fe8b42665e7bfc7938ea23a0a8efdb98a6825238f6fc90993926cd8d2317b
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:20776e91176dd86feb16fb24ebcb087cea368f5778573edbc39df47a1dcbe5af
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:5bf1563d90623b6f224278f58ceb79ed7877d88eb3af50826fe8588735535efa
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:243858bae64bf199c479086f71c222b096555339c3461d7d1bfd47cf4e43df14
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:77834bc71542f6c87c1e39c82513bd9c2007017cc4866a2d51be7694a198c950
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:7a0b186fbdb169ba82e3ff4a0beb8a3ac2d1ee555bd37182ee9d92a945093b66
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:2b725421986812ce501db94fe0ae5df6ae3e2a8bb31be6aebe24e85cd1ac4703
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:9cee55eaa91e073f07000da0db87fcca4f34af6faef16aac79415197c3026e67
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:0b9dbc00f7f579c37197ed3c5fad6e1420034f38418c21a6d83e57761763e715
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:762ae8d88d1b9e764adf84d5eaa964e691acbebaabf174ab0111a39b24256aff
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:17a2e3c30f2a59f402723dc553564ec1289b6e2bbcedb9cc353285de9f5e42f4
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:aff2c378cd0a3ba36b13572a4749a54836369bcf6814b8423793bb56178b974b
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:4de9442def18fff03515edcce7d4c60a756f3b2c225f8931a8ddd254d70b220d
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:b689ee70b715a65b664a2e31b5ac3b1a70d6a7d2abff28e99013094468c2e32f
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:bcaded7338e5171707c02a04216fa1bbaa5b57c8da9af0df91347ad6d84e0d9a
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:262db9468caefa25b66176fb3492c5b310c249ee1035d866b6a1faca30318ae9
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:a4f11ed7ca7a36516a88d9e179f654174b4654d71b67f2de3255a95f9929a452
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:78fbb9cbf3a7323a1d235e33323033957ae9e610bd0e26c493b407cfbadde258
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:eee2a6b322f695529d9953d06ab021f0ea0d69b9a2a2f7c3299b0ede8106c102
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:38f65ed06100af8f55530fd79ed5064f3839863caec0f610385abeea0e3c1efb
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:d38a886f70d079eed24b9fb57030f535e37524d6f7baf6b1022be1c07cc32ab7
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:1cceec46246ea7bef481549dce1ce91880d19a5650c9a6bc0f71f0d4092a6f95
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:753458389b93e2dc76f7d8766345f7bdfb3c3ba23d76e938b04e724418981e73
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:1b5f810b07f1830f4b71a9c384465806ea74e264770a90cd92cadd53c7d7e1b9
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:d0d9f66e1135e46889d9148a78704a0062baf69c4690c85da37588ccfe4e23dc
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:88be52d369e7862c378fa2c6bb0b5f7801bb68d773744935816411e549d51112
        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/addon-manager-rhel9@sha256:b622c7a3e14a3d80b01c66fffaf5fee108767fef90976d7ae981d79bfdd1bdf0
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:147e0635014afe58dd58af3d006095c8069e4746fd753349378435363add304a
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:083fbf9b0eb35119bb95652e3f8cc3f38f2ab66b38811f36938d19efb0f09456
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:9556277ac54246d8132dc08c8854992b5c478706ad483e1bf2e16c5e2aa04a04
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:878fb0eb1102cdefdfd7d266869a0a8f7cb19a1b8f0e5741f75755334e67c887
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:e97bb0c19ad0075422f4afadf82e3a5d6bfa24bdcf484777486d0d52c9f294b2
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:86859614fae3d7f6dccc051ce90b055d1b4b6f313d9b85187bb6dc06e9d59ae2
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:34714647e5ae36f266b3d68b56abbd0a79c8f4e05c4c9076cd0f76dad243763d
        - registry.redhat.io/rhel8/postgresql-12@sha256:af1ab437b165fa4ee9dfd6ade637d7de5fa556d0b3851fb8edc78afe0e6fa95e
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:d90b77447584cc5e03ea8a7d732a57ffcb09a4d0a0231ec41ff5a67e96a42273
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:7c9fc8014eacde9e9e598823815acd4ea61d5128a84c79bce914fe77ae276aef
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:951773131a05b2eb4a39ccf568b23cb633c926546e43227d5f715e73441b0b89
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:5b4a878a07934ed035dae0ab1b86eff1166124565226af5739dd8aa16ba90d50
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:cd9f96afaa76332885dd7762906681e32ee7ae8ab268e036b0f9874a10a99d57
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:f4c21f87dd7b725f472f51829bbc40261788e0f64c391ab136a3d6d8d9235872
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:0f813721abc29eb84b94b9ec6abbffa64d984bd7b5b76a810ef454a70da8ec93
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:03466cbe5b770e1e7b124109dac09840cdc6ed1bec56de9b42dc7cb8278d7f0d
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:f626f057664e3408ea5fd778e3d2a4e80735ba858d76749a1a2056c65face4ec
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:e9f7e03889d1151381a65cc41a3fc24e97b7e0169c43c91bb8dff54a6fa7e837
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:462fd64a59c1915d91d628af10415107b7ab4b03ac322a4c77687064e5f89421
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:e9b9e2dba46fdced4d9276082956b34f1223dfaf7f6da600efeee5a42317754e
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:05b87e707d6e0b2fc4cea9a22ed5b0c23cab8a38ee4cc9e8e5b9f4059e7b2dc0
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:55388553b68ad695bbde73addc43a68fc4523c4477f979ee1e8103b79dbe0bea
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:6028387bdc2e8cb2cc62a22ff242d4c4315ccae94fd93fa9ffd7585b1bb324f2
        - 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-service-8-rhel8@sha256:03446585c076f6f9983dd336e1ee47c3955830b94a5e81c5c256d627ba675030
        - 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-installer-rhel9@sha256:9520707d782b393e2e34061c18b269a1b610143d8b06739984776101b08db322
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:b583869a3c3383670427be20a3b01fa5eba42c09fae0c8401063b0461831277c
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:eb2d84f5038c12c558bbfbc9441c18337051d0ab64264a0574232546fb9fea33
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:61856d12d173d98c9cfa6596cc9b19be38e8f789712dd742dfa613a1d585f53b
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:92bb8f1e74ca9d0938d92f84f85ca047e8abc6be6df54eb6d8cd506f9393f6ba
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:358e8a39385d43077c2464d1cf037e3358c8eeb7e84958671acb1e996f070d25
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:ef9d311b1f5b5b386a6fc224c0fbdd8794c0ccb4e6bff11939c8332f48da8fe9
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:eee3c75b6eee3f1c0374cbbeff415ba8e28b9556edbc76d2bb01a10246c3bc6c
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:9734a109c7be60f5871132379e8c88c0f92a9a991943de317040ad8550637477
        - registry.redhat.io/openshift4/ose-aws-cluster-api-controllers-rhel9@sha256:2f3b87c980d89161d93ba27ae379537ca9b603aed6de7b03e1720885231fe519
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:52faed21cd40448dd4260909e2de026155afc207f1ee26b396a75b6099830525
        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-operator-bundle@sha256:f40e7955ac649c383134ab6e77bdd521b75b21ecd9b476436405d0674c7fc855
        - 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
        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-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:ee3ea20acb92c12d1808076f00a179da61e632888e8e59e0e2b8b5caf053246c
        - registry.redhat.io/openshift-service-mesh/kiali-operator-bundle@sha256:35096e1737e500ad148e9f5ca2a14554a5e1b4f3104782f00e8322352e365833
        - 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-ossmc-rhel9@sha256:73c5c6021261336e50b34210f7ca4926511e8f11ff4d29f1305a0236dcc19c5d
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:99fd79555e907c2a84d0ffabb07fbce41313f800dbcd73edc6ee39773b5cdd23
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:bde79c700c879bae1bb67434f51b3b202d7072de771cf8d86ee65b5539b9e347
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:3c562a0583789ef34b25715663a66fc099c418d067e8cabd3c16e149f995d3a7
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:5e0f84a7ea17f1969dad842e2b8a7d3d868987e93a8e07ed8c2fab029618b8b6
        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/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:f182078b0077b6df6d47ddcab0204e963c1475486bd61b8eccb73b46eb8b2995
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        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-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        - 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
        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-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        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-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: 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-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
        - 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
        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-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
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7c7c42fff63e0599bb943a9e9617b43181360d5a5254b27f368010af275cf0c3
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:b03f4e88ab1fed4744356a584d673fb2fdb15de7e1de7786bdd222b853690670
        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@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:bbfddd7cb4a6cb7a131a0cef174054890fd39956d63e737c92fe8233ad8f98e4
        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@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:791ac512370af5cde1e089de3def760e7dbce69badc03137051520ce316d63e2
        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-operator-bundle@sha256:2808a0397495982b4ea0001ede078803a043d5c9b0285662b08044fe4c11f243
        - 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
        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-podvm-builder-rhel9@sha256:9efde29746c28defaabce25c2f0c6da7567ca7dc7fe97845886d7d9e750ea094
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-payload-rhel9@sha256:7317c2d8c0ac8e542e39d695851c4add301593d2b52af80c77fd4f996efbe2b8
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel9-operator@sha256:b59db913c24f866a700d7662f3fd2de238b4a71550f2f04673ef3ba62ce35aa6
        - registry.redhat.io/openshift-sandboxed-containers/osc-tdx-qgs@sha256:86b23461c4eea073f4535a777374a54e934c37ac8c96c6180030f92ebf970524
        - registry.redhat.io/openshift-sandboxed-containers/osc-monitor-rhel9@sha256:3c1434943628c01f102615115e89e384b4d46ccf2fd6c0abd5205917afc4d05a
        - registry.redhat.io/openshift-sandboxed-containers/osc-pccs@sha256:de64fc7b13aaa7e466e825d62207f77e7c63a4f9da98663c3ab06abc45f2334d
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-rhel9@sha256:408eaaac58d01892aa2087153eda6f451788c02b8b719dca8e710a8916b2e081
        - registry.redhat.io/openshift-sandboxed-containers/osc-dm-verity-image@sha256:0eb5efd518128ac6df93fec2e5d24c4c5662d5407e016d1f66579cc9ce4529ea
        - registry.redhat.io/openshift-sandboxed-containers/osc-storage-helper@sha256:c9b31c8acd23c6925d6bf193696817f14a52b0f0fcbd8459023b5d69da93482e
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:7b2035904ec464fe32c55ace525f573a491b046b5ef7cd5721d7a67cfc8dae25
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-webhook-rhel9@sha256:4a533f77a4f1415b8eed0d3f5a4ba9d62edd329bf304f26f23b0c1d886dddb71
        - registry.redhat.io/openshift-sandboxed-containers/osc-must-gather-rhel9@sha256:e4bb201c368afbc80eced2aea0869d152e026253a14349a01e2088f5dac5e214
        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-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
        - 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
        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-daemon-rhel9@sha256:7421edb9be136cc7102bbe8f263108fde6cce3ed411afecc241d8551ad56961a
        - registry.redhat.io/openshift4/ose-dpu-rhel9-operator@sha256:82ea8006f9d969c4b6f9e52d75ff81d7129ef0bee37ad7056769b485c0760aa9
        - registry.redhat.io/openshift4/ose-dpu-operator-bundle@sha256:2b968beb8b658b8f16257842d2594f4489116adeb76d5965b7642c982ed9d18c
        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/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
        - registry.redhat.io/rh-sso-7/sso75-openj9-openshift-rhel8@sha256:2d4ea7226f43e7e8e8d3fcef6d425eb5104a15acf07791355033300b80db2901
        - 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
        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-bundle@sha256:c542bd411eff7a4e875b942b23452aeed8e5d60e606f87a73e16f48420fa2400
        - 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
        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-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: 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/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        - 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-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:d5b404530b7d6ca8c7eec484dbcff32544c3ce8727a4d61c703396ae3fded62d
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:a0f327daabcd97e59a855450a4ac642e45e8dbffa6a5f006f23525215f1c1a22
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
        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/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:64537ae6999feb2c7e449d8d5a1cdf5f64450b45934a7dba2b82542a5f6adc20
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:0a2285aea9606696c4ea75644f2019bd199c6632de4b7f459f4024d5b3f66048
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        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-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
        - registry.redhat.io/integration/service-registry-sql-rhel8@sha256:6c97fa8ead1f6f0323811f8f35a80ae33f0e160f6c58f2bdb31713dbeaa3f014
        - registry.redhat.io/integration/service-registry-kafkasql-rhel8@sha256:fc97a2a08b2f77d620ea86ec77bb4f750bfc0109ede3ad1080c2cb694019f8b8
        - registry.redhat.io/integration/service-registry-rhel8-operator-metadata@sha256:a2f0513cd8b96d71855464384cad7f1cd8c39f8d445be1ff1c1b91f22008d16d
        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-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
        - registry.redhat.io/apicurio/apicurio-registry-sql-rhel8@sha256:0e5b7ed0d9c2aa07896f4d1f12c6ce6937f31a72f8d496b95c9c151121f46758
        - registry.redhat.io/apicurio/apicurio-registry-kafkasql-rhel8@sha256:f8f826084f842293de019ccc9ad0268e4ec0957e0db8fec58b069be2d6fa7cfe
        - registry.redhat.io/apicurio/apicurio-registry-operator-bundle@sha256:807f6c8f10a0f14789605e0dc64506e7aad7cce7789446da5079a49e79b8721e
        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-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:3101db7b7f493e476ffe2c91083792ded3e2030d431c3be7d7176ad7df185324
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - 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-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-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - 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-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:231965a888729ba42bbac8d844d128e18468e5a21916dcd525d43ef028ccea5f
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        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-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - 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-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-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        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-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        - 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/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        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-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        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/rhdh/rhdh-hub-rhel9@sha256:d7ae2456857cab09a9e9acf69c9990ef18deb7f920046b8c2483fbfd0d42bbfc
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a93b382258a34e0b56ef6616a8490e5f44ef1c6aa5d29c0d08d2147ae5b440e6
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
        - registry.redhat.io/rhel9/postgresql-15@sha256:d5f3d496ecd55688e384cc0627700a97af6924582123bcf00749c375724af3de
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:95ed239eb427c7b1e422ece28c5277b5018efb751c2b472bf502b8216219c047
        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/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
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        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/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:b4934c45ba595b36e65c73b734c58d1517e7f43b7cfc309ca8bc853733582f76
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:c044fed8485a62a5051ac726525da546936be22f268db05491bf81582e0e6194
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a7ce92f7f4aadca2781c44839bc357615395587bc8b68a735642967cf8694362
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
        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-operator-bundle@sha256:5a19032dda9a0f584b41cbe9e729ed23e6003d90ebbb026eb9e7bb9769d4a4e4
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
        - registry.redhat.io/rhel9/postgresql-15@sha256:74377f5a61dd7e3e0ba5d2fa880b7107025433a026396567c79eac927b4212bc
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:2ad8c87e82df27c2b6ceba94179d1f0a40fe775368663c1b5572611888e0e02b
        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-hub-rhel9@sha256:177a7308f61a6b1ba21bc0f7bf550a93d4478e52479e2c94a2437f2152e3d8ff
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3b2cf972e1ced0a46d3559da4eb1a1b32c50457293ede4958a13538a84b45316
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
        - registry.redhat.io/rhel9/postgresql-15@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        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-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
        - registry.redhat.io/rhel9/postgresql-15@sha256:990be59eeb55860a62455375fef7795854d78ce15ac3e7568b9bdb4680bfcd97
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:b5ffbb3cc1caac4e020abf1d711566aef859b08e479ab181e5b39ce9da7a5b73
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:54c5cd2a4865a372ba9465908f73928382745e04ad446c97b28adde213d13309
        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/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6bcfa981a7a75c242a16afa6dab36bf6e3b8a1442fa863875919ad551f48eceb
        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/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - 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/odf4/ocs-client-operator-bundle@sha256:8417c655f110b508f858c1ff2a3d0315e0dab9baba9afec846f61c71cb294477
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - 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/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:de6cd74955a0403d8ff97490a657b941316d69922e901fa3513f1837fb8d981b
        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-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/odf4/odf-external-snapshotter-sidecar-rhel9@sha256:87b5909be13793b80ab8cb916458c8863bdff29a7391630af0707b39080b8ebb
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:a7a7533e91939980298a9b097ae535a40fb179a4f4d26b3194b13c396b845d17
        - registry.redhat.io/openshift4/ose-csi-external-snapshot-metadata-rhel9@sha256:da5c73b33774046408736738fac6e4bd82fc0f7c0a6e966e788941e81746fd28
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:954212cfe5ee83f95fb844f0b59d2c5230c0a0a0135ab4953f24e29ef4cd0157
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        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-operator-bundle@sha256:fc0ee45511674e99f3ecd1b807a660e4bcf49af77bf5d66af935d1cb16336bc4
        - registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
        - registry.redhat.io/rhcl-1/limitador-rhel9@sha256:aff28d76f9cfeefafd6b652e055bb25e1a2bf250e062e3e9b5e54db873f9eeb7
        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@sha256:0f7d8c9aa266a124f571ca2e58f0705ec7257e2cc96f353dd5c41a6f9de00f4a
        - registry.redhat.io/openshift4/pf-status-relay-operator-bundle@sha256:14ac9f4b837706b9ff92cf899f395e0c9f3758d2ab5c1f2e094a6ede45b24023
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/pf-status-relay-rhel9-operator@sha256:d3429e65675d7b1bda2158db44a771c3b55fe6a3f269e08fe6ff9ef224226772
        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-generator-rhel8@sha256:4c493a2d690d0d7c1684c53d15c06b47d691aeffdde6dd471b6e75fed2fec6a9
        - 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
        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-generator-rhel8@sha256:bee0eeaa7898af835f80c5217059d73361daa42197fa6cbbaf416e1ba373eb54
        - 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
        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-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
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:323f7d1fa408dfa958afa2aba0fcfff69cef78073a9b1cd4d70d3908e46fb8f5
        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-generator-rhel8@sha256:dc39b79c360511ff999eba5b2c299db3e08c9c244a0a1f3da8c90c02695e506d
        - 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
        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-online-1-broker-plugin@sha256:2466a336c0d78b196635de3fad636aeff2d9265839f7271b8ef94f3ba97d9bc0
        - registry.redhat.io/amq7/amq-online-1-standard-controller@sha256:070349af30cec52fa8efc185fc940077a64bb40e3e36310d7cc6e39ce0971436
        - registry.redhat.io/amq7/amq-online-1-agent@sha256:f98ed8ee97ac59d8fdd40ec8b2c063a5afd360a3e183057c186e7a77a32801ee
        - registry.redhat.io/amq7/amq-online-1-console-server-rhel7@sha256:1dcb3d0cc7bc6e84f4f96962ff88849511b7a7686a1f5dbd9300c4c2c8c05e2f
        - registry.redhat.io/redhat-sso-7/sso73-openshift@sha256:18d15980f28f0d0c6b8582131a1f062d84463577512875b5391a612c3d7d1096
        - registry.redhat.io/amq7/amq-online-1-address-space-controller@sha256:9acc555c8e869aec7d72f53b60320e1a96cc82d748638e0d50970837229fdbee
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6d489a7897bd831ec273034f1ff0e223427a40afd01b9835ebb020a8bf9ddc66
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator-metadata@sha256:d6d0e71f5451e8255edfff87ef28ba7743fe7057efd53b25bbbd01bf9e1d0307
        - registry.redhat.io/amq7/amq-online-1-none-auth-service@sha256:a013fb1806c002b408a7753ff943cee24fbcdf8a657eff1e9582c42b5a7b0844
        - registry.redhat.io/amq7/amq-online-1-auth-plugin@sha256:68926f434b2f6ce4d9698938bc3c53d514c21c3f76c73b6b4cdf7fcf51f7cb0d
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
        - registry.redhat.io/openshift3/oauth-proxy@sha256:59b20f23c03d0012ec5c95c4725892ee64277c22dedc9d0a90a7b6b0bc80fc72
        - registry.redhat.io/amq7/amq-broker@sha256:1ec0437bbd82722148fdbb02dc55682b114c311cd6f521a8bc621a8c1cb4b32b
        - registry.redhat.io/amq7/amq-interconnect@sha256:5ebd4c4a0ed0db2725ae466550c915531b32933c420344cc2083c616da3f326f
        - registry.redhat.io/amq7/amq-online-1-topic-forwarder@sha256:de33a701339d91a4e9275f7cf65f917ff75368a59b8ab36dd66c90bc306875aa
        - registry.redhat.io/amq7/amq-online-1-console-init@sha256:0970804909b82fdc3d4e7d5d88280e41157d743107de8bfa2d1baa1367543176
        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-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
        - registry.redhat.io/apicurio/apicurio-registry-rhel9@sha256:fb3fdbb49017c86c25058c824d833be061cd4f51cfe6b43ab5d7f799f0a87e78
        - registry.redhat.io/apicurio/apicurio-registry-ui-rhel9@sha256:9daa045d14192754950aabb4c0a741f29ff4f0f431cb19c12bd1268ad21de639
        - registry.redhat.io/apicurio/apicurio-registry-3-operator-bundle@sha256:0c29e835e253ff6bc0dfb2a9ca01e94756c8995f3396ddca07dde95c9e16e633
        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/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:3a398158d10018bfac5df291d6998b513cf9a30e5477bcaefddcf66d229627c7
        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/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:2bec31b0c5407ffcecfd8b860d8afb1629eaab31a250f60191f94a824e0a52f4
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:0905ba3f5cf87780a1e95b6a00ea7cd340d4ed1b5054e4b2c82406270baeaefa
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - 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/argo-rollouts-rhel8@sha256:b5c8a6c7438a45125fc7fd970946f715ab7193b7446d625fae80dde9d1f3f914
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:4c842f0ea8f0e9b53eb16d94488fc2f4298bd8e4be2f48713be9157da24549e6
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:ece2fee4227ad1becadca47028b78ceaf8717a98ec84e3f1b5188a135c4b093c
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:c779ad87a7f71d851c2af818abf16e5151c43d3fd54e64eac2fc7117c00753f5
        - 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/dex-rhel8@sha256:a74e0a1fe3589ebe9f226a2bad20e9a5d5601a0e62c5f3290902f466f55b7160
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:ed530db9b4a29fb591ea208cd0c6b3b83b49537ff5a0a4f501b54ce667f9b303
        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/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:31bdff225bd825d02ce0f468b1edc77541ce85b7b9111f14a583c418c984232f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:0b926fc9eae775425faa1ab9709a36fdac15afe4bfe523720e17ecf5df45bb28
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:42f809f32f1d43186b849e3cc78063d3ebb2b54c55b2a1b77908af09a5ce044b
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:eade50b8321c1b2e0a8ac4dcb34596d43dea0a137b8b97b6eb68c6d469c8b200
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:0df37cf0a0e48efae02a0711c6da61c6165e7856db97097e98d56c8b6a137bb9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/rhel8/redis-6@sha256:c4a98010f7dd5faec2047bb9803061704233a8efc930be2a02386ac16d062d86
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c94c2167dc957856682a104b9a6187d3d321dec71ae794acc0dc37794d2cc373
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:959de6a95ef8978f66fdbe1033bcaa0ddeff9a376023e5d1d2698c5acb417305
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:7ea96000768b3cf7711150531c4c1c7edff2c45a2f29fe10bd9811ab6b281909
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:4d22a7a6cc2f0442889512267ae3d9356f05ff0dfdbbe137c3d8ebebc24818c8
        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/gitops-operator-bundle@sha256:80198f65f7e3f9022a34e0342e9423807b855dcb7bda810172eebc9a27afb5c2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:73918f3b3c507fc64006b7a500ecfa9d58151d694852f696c41a4412edffc78e
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbf3038daf7c797123c511f9a609c3485cb1a5bcae53c614fad17e0a65fa7ee3
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:7d82c719b1cef64607d30e8aaa5ab293955771c5b1dbd430e0befc988a43356d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - 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/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - 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/openshift-gitops-1/kam-delivery-rhel8@sha256:1cf485a889c7586cb4944f000b53c0e97d08f97ba14e580bec57dad7cb13712e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9e0fee30842a16d7b8a39d336123c80c5271cb2ceb50759fc7ee51a4ed09ceb3
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:33bbb88343285a0510670384b87d0226dd6de8aa12c78b68921362c4d6f5a6aa
        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/dex-rhel8@sha256:e87515d016565bb69cb2c2ac40432e0127dd2cb20a490ac82019836032ba15e5
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:f04d565eb5162fd5a9c78cd8443af6a3b184a660277537f1d6d575caa2e85441
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c02dc2c79ee24ce5450ea4e19493ac2a1997eeb5bfd359291642c529826d0cdd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - 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/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b982df02ea7c45a7603d83fe82cac12e1faac303a1b72af6a727512bb97441df
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:3f2804bc2af437ff1f06c214b48a1a780dfcfab995650d901c03270057eb9f3c
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:a366229e6ee26ebe2d7f765b2a2da6057a29e783835655b5d97545ac563b541a
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:bde11fa83b7e708677b08ea995041f480b88edfb93e4a62c10380d101c0a349c
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d4d5724f67859d24c32f0f5735f5af3e325f77db97f58bc7f17ed4b831b7e534
        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/kam-delivery-rhel8@sha256:b7d3c882fc25fbbea28951afb197d4d47ace253864889339396e20f0c6897a7f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c369df980874aae270ca7bc6455f1ca45467d75d25fe80d7bcb06a7826bdeaa3
        - registry.redhat.io/rhel8/redis-6@sha256:a9f30ed08abcab0122556a5485fbcf6e0fc03860f19954dcebdbf5e754876a45
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:2c45cfc01f9ec7577afc09cadc4c1a6f470836f6a0a7c24d66b791913f89bb05
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:773592dfb9964970f444871a8812e8b74db3f205faaa0bf148defa1a2b87b649
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:7358787959af7e7e589edfc043a97d80ebab87536bde365d33be7a600071bf0e
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1112160243f227a5d393eeee165bd4fed0d3f42646a9280cbe9af60ef728aeb2
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bcf6b3136a5e71803cb518c8763c165bb46ee37ef7bf55503911d7fcb36b3a8f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8096f824bd96e3148cf4b6936766c888d1fff0af9e9d0be440ae4feb6adc03f2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:cd4965d91c163160bcf43a02c54ca60b8704281c95de904f904df942bfd83bcd
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:97e32825f59c33cca7d8dba3580095205c20435ccd15b91cf0aff37db9841e0e
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:42a79aad641e8607fc339e4ce7f9cf1d258be01f863dbc31a94d2c27edb645bd
        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/gitops-operator-bundle@sha256:0b1771f697a700263c5b827dbde56a5c9bab610e9d7df55ef93885a4e54cc0e9
        - 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-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d41454824632475f0e88aa6e0031ec643bd37e1d575df36cd3ee63daf1403281
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:911733d78ae6f36f642b4d63f044cd102b7eee170508eaf518ac7acf0f339698
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a9e2360f00c5c9840a100a6748bd905b8f34169140a33fb0ca4af9cf6db71642
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:5bda26e2c16beebf66dd8f3c3c55d48e2f00db870f2d9d4d44570d9d3b8bddb0
        - 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-haproxy-router@sha256:2dd72760f736ab13e87d6e507e654c390d2d6af3154c6adb85610b5f58085b9c
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:4d945dd1a6fc0e8b6cfc16f4359128f1427b094e76efd4ff31325a1839246107
        - registry.redhat.io/rhel9/redis-7@sha256:2fca0decc49230122f044afb2e7cd8f64921a00141c8c22c2f1402f3564f87f8
        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/argocd-rhel8@sha256:1935460f871ad2cc9fe097e1a7e32a67b4b4a3c58aa0412cffc28823f4ffb49f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:2d361df79b6ea75f15eed2d6726303351298b47b4fee75aa8aac255a19e1ddbf
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - 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@sha256:1a4d9d6d6c917a161fa3797fedf722a1ba9211eaa4c52cf976bebb629eabe40c
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - 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/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:636d307f13d82dd8984e362490fb3c8938b05d452e65f44c7c247e7fc4a8be8c
        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/openshift-gitops-1/argocd-agent-rhel8@sha256:56ea8e384f20a903c9b42da1d244f0ec98c77916e4efebb53f876e459761038e
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:eb6bb1adf263abf1cc4f297f9db8289aff4c8bd73c3f9b8968facc1bdd2ee17a
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:724b4f15d0c255cc9c096cb44331ddc2e6456d4909d03ce463478af76b33304e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        - 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/argo-rollouts-rhel8@sha256:c02ad9e0709fbe52a34d9e8c146c90782cd49e351ce27e74e299cb9762246562
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bafe22c773f034d4cb4c0498f2f669abff23927378b424a05ba13b196f242710
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:e1101b02df32a56a9aec80639372248b72963240dc86add446d0d07da65baca7
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8ea41862301665deb2eafd16fa19d4d76663cd20829256b575ba7090889cff82
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:d5233a088e71464f08d05f8a1f04efc236684634c89afcb93dbf3ac81a740a82
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        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/dex-rhel8@sha256:89263c0ed73f6f3bf6f73d9ed32c459489e1adf2b423ab73926b5343064d88a8
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b4d6b30d562e1cacbb1ca461e8c14b95c0d42be1baf876599c446669f2584feb
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:684edd8ef336440fe06964bd977c0051ffb1b4df00c47ccabed710c48d19bbc3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:d7cec49c3e3ef02a3378ecd94f64a7e94f5ed93b5e7e6ff81f8d758eeabcb7c0
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:d5cf5da89528ed1505c0695183f432f1501b0226ce6402e84b7895ad14620d5d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:772adc241b808829d62631a288cef0b3d9cfb617f00d84aa3893616e48e30885
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:337d52feb9a42ad04aa91211f41040db48e2de3a09266a516183882f9f587a6a
        - 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/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c0e231e430daaff0b7a5b06f9b8628a2fe0ea3a82a314d42a364fe7f883f075a
        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/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        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/argocd-rhel8@sha256:dbcad68b70ab7918e944099aef4177c9bc3378e9ca49499dbb94a175927d3209
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0cc4fa704e581cd5581c816668183f602fae6ef9ab3c04ce0d99d561287ef140
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b22190de3162d3e03481cae8904ce563912756eea7ac7e7feec0acbbdae5e6f6
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:e9e2f950cda8153cff112e43872b98e4977d3cbdf59713b8de92defef6d34b6d
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:06f1150114d4c0bd236d2a5d4716c9c3e95a9733058297790389d6ba2a1bf264
        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/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/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:c2f39be75173b4cc57498c5845b14c464bf9af92b49716df9661c8135ac2cf7a
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c55aadf45397083bec4e42d6c0514ed79169a07fd3d9d75671904df2c0520e52
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:26050fb95978e90e8d00e895032045e77cb236008a0e1417459e1aeca8a48c69
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f1371d2012796e9aaca105112190ff89ec3d0be95968e05b19db101480f67975
        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/openshift-gitops-1/argocd-rhel8@sha256:f77594bc053be144b33ff9603ee9675c7e82946ec0dbfb04d8f942c8d73155da
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8cc59901689858e06f5c2942f8c975449c17454fa8364da6153d9b5a3538a985
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:16d9184345e6d5a19f326a7b52f76d8a59b96763f233c50546ff017a625e5ff5
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0d13c03048b4435d9f5045a6fb7bd4b8808461b26aeca60c0047fa5937e1d45d
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:8aa68fddef88921aeeede24a849d3dabbceff01dc03185342c21e6ee58033eaf
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b2d58f4dc20eb7e17e09af0e8c5de55fa04f9f4f697e10c6be81a7a6a08381b2
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        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/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:3873d1f18b5643e1de2601419410270342650a21428bb26a4cbee20c0c63f98b
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:86012145d4b8798dc12f6f4f07a9316a193188aaac865e324b63f4e60e8ec584
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:43bb961d847477902e66a92edd1539322cac8d5f74706b048a458ad037a0c7a3
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a568c8c647e2e2d6abdf12138eeef8f8bdde1fdcbf786e9ca8c8f93bc79acaf9
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - 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/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:136d3a936759e112d3ea2e78f7c02bd882b0fd3011f4c452f45c32c43822772d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:80f92842fe4cba008a873ad2ab6059a3a24e76e16671d8ece034dbbe666996bc
        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/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - 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/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - 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/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - 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: 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-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: 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-controller-rhel8@sha256:73db97d20ee9415e9a8941cc6a36ed81d901d760d9949e95e10c90866ef8bf64
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:59ff4966f4f653e49d42d97bfed6351d3730128db74f666ee4ecacff11790baf
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9f9f8f69ab98c1f25cc301572339e0cc5c5b76f2e29ed26e10ac91ad20e0090c
        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-controller-rhel8@sha256:2e0b9332a44d8d9c23e19c7accab0813a651f39210257820db508cac28876595
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a2324acaea757bae3b01b1aec59f49f4dd79bd1868e69d3418d57c210a6dfd9
        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-rhel9@sha256:9d305bfa5f20dcdec7dd826670814ec8a92c7c177b00b9bddaae4c8a1cb31403
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ingress-node-firewall-operator-bundle@sha256:82df35fea3406d71cb5f49f06098ea2946cd3efb4685b662eee0f60d27ecf33c
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        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-router-rhel9@sha256:be9dbcd2a3a1e1e536921390dcfd283fc45dc4423d2705376ef37a9fb53f7cf1
        - 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
        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/service-interconnect/skupper-service-controller-rhel9@sha256:61542c5f0989f51ac5d6c96f5d0e29aca75614b79e7626299c77c5a74636b564
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
        - 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
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        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-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
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        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/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
        - 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
        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/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
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        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
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/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-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
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        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-operator-bundle@sha256:fd9c08f0a1455f7c20f3ef00983bd2cee495f6fbca7e30e3aac52512d71abe42
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:a4255931341242cacf44202192e8f69805cf359282b1753beb7933ef3b088dd4
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
        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-agent-rhel8@sha256:a8e60d9f63e2ed0cf1e27309aac54014e3f1efc947b51ca0a99376338d220875
        - 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
        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-operator-bundle@sha256:783c2df43ece311bcbaaf30f33c081608e996a0f651895ec0509bb73a6a1f590
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9@sha256:c3b17e2ff30eab6e64e8fec59da37f05ec65d91d8d76086a9510372b20eb78d6
        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-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:35498d3e82e157b35b5f2270033ddc88a521453ab90c3b95e2a6a4cdf62c21c4
        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/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:747108b5f119ea96ab3c8f6d7035b1e98aa8df879ed772c94459500b5a715483
        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-openj9-11-rhel8@sha256:c8607d6538a7528e27e6ecb138e0a93a03b3c9fa1f8a9a5aad3fd9f4a6814448
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:a7641fc5f4c7aed4b73d7d98ccb58ef64cf14ab16d72378f56dba3ad4b8714c6
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4d8057709958ef60bcabdcec52f05eae8df121fd3f4762c3218abca38130f638
        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:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - 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:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:111d1f4ab8f006386102d1bec4cd6a41b446d9ae401a43c821b2f318c8ba74c8
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        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-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:9bc0b730570ab55fbeca83075949f4caa96ed5c37637420a59cd4a7db01ea840
        - registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6b78aaf15558c0522d22ba3003244203e6d39e6fe737c3075e30de8763218358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:0d368459c98c5788dd55d2add5b4b7d438b9a8c814ea8aee2222ea956699cbb6
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:11bfe5c8109d26164cff428232b2001ab8df464f14a382661b936543336e2960
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:879f3dcc24ffe795472779f777d955666ba4041c17e717d5e165cd7f12d7955a
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:c25e3152d6a6b6d5cd86d311bf567e594b9948440785209cd8d7986076a5a10d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:ad4f91f984b4b898012963d52e6ebcd166ec03e76e26eba3191ecb87f51fb18d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:1d5525d2d575dcc9d90da57afeb5fb310edc28d97d7ba55290db6bd152a34a95
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6e1766784b684561666134d41dca5331b80d50e63695fe7b1a1d6d4cdb73f0bd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:a711c50e489995fb60e5dec23ce286360743feda5066e4a0861d448aa4f2e903
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:5656cd188d054551489d45be996266d03e3faa8814b8bfc0f360cf0dceb83cbe
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:2461b1da4bea1e25b69a7bf8ef2173d905369e5a779134fa5099677da10cd8b4
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:48cf13e71953cea6f62354289f0d8ece7a8a481ee0bb2c76eb9352d438db9ca3
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:f59ae21773dfc207454a709ac5f7aad2be6a6a20ac88da26c379edeed54537b8
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:4b9bf39d2ff14bcfbd4628a399093703d87a2b2b9c8e74c3d7cfdff4b5167fa4
        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/3scale-rhel7-operator-metadata@sha256:771bd8187990f334cce038a647e9c0fe903fa7519994119bc995ccc7cfad8b6f
        - registry.redhat.io/3scale-amp2/memcached-rhel7@sha256:6195aec4725b71f46a3bc2982300acecafc9c4aabb4ed1bbec06de9775d49694
        - 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/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:6c53e72c31d1a3e13aa3ea835039f30869e465903262545463f790cb36ef5241
        - registry.redhat.io/3scale-amp2/backend-rhel8@sha256:3d5f1ef4e67f97cc9cf3accf25033e176fc59714236a5ee0f022c9eb8be7a4b1
        - registry.redhat.io/3scale-amp2/system-rhel7@sha256:13685f7ca51ebd1e21036fb08b3c2089a66cedb63683dca39925ec0463215fc6
        - registry.redhat.io/rhel8/mysql-80@sha256:158198936a7f7896e0f94133cd64c8e8902e4f86e670b56b64ff02acfd9c2855
        - 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/rhel8/redis-6@sha256:22431acc2c991b6ee6b4de0219366dee6ea745122a49a0175d5fb58ed7d9205f
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:4f807ee6e885e966853f70e1c40bbc179dc1f994b401ac868b7f2b921f9d17a0
        - registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
        - registry.redhat.io/3scale-mas/backend-rhel8@sha256:7d07caf7b6c5a195ba4706e82f3d28c3793afab99b1a6d5a7020547c48534cdc
        - registry.redhat.io/3scale-mas/memcached-rhel7@sha256:9c2aba45971c924fd55b2aab50ee8e6861a9defd3808b38ff30316727af31f9a
        - registry.redhat.io/3scale-mas/3scale-operator-bundle@sha256:a6c2eff926feb11da27eb9972cb86ee0ef9ca0b013afb6fe6af4f72439d557ef
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:a03a1ae7f01259192b8d7b4ecee6ddfcdc0cd9e2d24a8c2306accb93ee767135
        - registry.redhat.io/3scale-mas/searchd-rhel7@sha256:1426e4bd4aa0eb28b479900ffc02621203886280d24997cd11818387ff30d9df
        - registry.redhat.io/3scale-mas/zync-rhel9@sha256:419eb09d1b165363d5b90df01c1fa10f1f91f03649a8758620ffa49276685feb
        - registry.redhat.io/3scale-mas/system-rhel7@sha256:b0fd85a4994502a3a2ae9ba6a7610c38af64b6cc897efac12feb4b115a484f77
        - registry.redhat.io/rhel8/mysql-80@sha256:7c05e61c0f4f5dad6aeda136e9a1af2f04f4de3c51004e997d4eacae3778da17
        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/troubleshooting-panel-console-plugin-rhel9@sha256:b4a6eb1cc118a4334b424614959d8b7f361ddd779b3a72690ca49b0a3f26d9b8
        - registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:48e4e178c6eeaa9d5dd77a591c185a311b4b4a5caadb7199d48463123e31dc9e
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:21d4fff670893ba4b7fbc528cd49f8b71c8281cede9ef84f0697065bb6a7fc50
        - registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:1b555e21bba7c609111ace4380382a696d9aceeb6e9816bf9023b8f689b6c741
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:9a2097bc5b2e02bc1703f64c452ce8fe4bc6775b732db930ff4770b76ae4653a
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:12d9dbe297a1c3b9df671f21156992082bc483887d851fafe76e5d17321ff474
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:75465aabb0aa427a5c531a8fcde463f6d119afbcc618ebcbf6b7ee9bc8aad160
        - registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:e797cdb47beef40b04da7b6d645bca3dc32e6247003c45b56b38efd9e13bf01c
        - registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:a223bab813b82d698992490bbb60927f6288a83ba52d539836c250e1471f6d34
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:dc18c8d6a4a9a0a574a57cc5082c8a9b26023bd6d69b9732892d584c1dfe5070
        - registry.redhat.io/cluster-observability-operator/cluster-observability-operator-bundle@sha256:a3b8e1f3f8d154095f365ccbb163f2cf3852d6091b1f74773a8b5a2ee5c1cee6
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:369729978cecdc13c99ef3d179f8eb8a450a4a0cb70b63c27a55a15d1710ba27
        - registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:093d2731ac848ed5fd57356b155a19d3bf7b8db96d95b09c5d0095e143f7254f
        - registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:b5c8526d2ae660fe092dd8a7acf18ec4957d5c265890a222f55396fc2cdaeed8
        - registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:e65c37f04f6d76a0cbfe05edb3cddf6a8f14f859ee35cf3aebea8fcb991d2c19
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:7d662a120305e2528acc7e9142b770b5b6a7f4932ddfcadfa4ac953935124895
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:d8c7a61d147f62b204d5c5f16864386025393453c9a81ea327bbd25d7765d611
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:42ebc3571195d8c41fd01b8d08e98fe2cc12c1caabea251aecb4442d8eade4ea
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e7e5f4c5e8ab0ba298ef0295a7137d438a42eb177d9322212cde6ba8f367912a
        - registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:dc62889b883f597de91b5389cc52c84c607247d49a807693be2f688e4703dfc3
        - registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
        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/assisted-image-service-rhel9@sha256:6082629342c13caf33bde021724f5d2b9c400f838b74285a3c2d99d68a03b26c
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:e399861c4ecf3c1910dfc7e2da2b234bdc1ae1aba3a006f28285756edb2c9b2f
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:9b4294ee810cd554905c72fd080c3ead28a82dda81e01210552012e4a8f7dc5c
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:dd7c28e8901e1804e4832b2d3437bf8bc0e4bf7a388a94e6b9e0df07f6eee10f
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:7b3d109adb86a87475afbb76faef4a4131f78ad092d4aa541e1c59bae611acbe
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:45217815cc0f2bc24d5b7ac07019af9a0ccb13f8cda14713422b8b699f3723e9
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a187fc5e6c73bdfc63661b98c05b39ee4d0b3a0e1a210c49d188f1004bcb274
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:db28620adb4c59bc9811dcd5d0a743ce534f24e40165f84af7044a5b9d04b76a
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
        - 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/capoa-bootstrap-rhel9@sha256:1ccf3b85dde18875aa1b98797d4477c7fe725725c5b6d91b4ed21e3e3249ec36
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:ac1c6821b6bf2062144f8fc38256e97c16a55019efdff6bc0f2469899508521e
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:43ed1820a27580f8fa9c80d53590d2b5cd049c925cb57c8c396512bddeed3332
        - registry.redhat.io/multicluster-engine/cluster-api-provider-aws-rhel9@sha256:1e2fe8b42665e7bfc7938ea23a0a8efdb98a6825238f6fc90993926cd8d2317b
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:20776e91176dd86feb16fb24ebcb087cea368f5778573edbc39df47a1dcbe5af
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:5bf1563d90623b6f224278f58ceb79ed7877d88eb3af50826fe8588735535efa
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:243858bae64bf199c479086f71c222b096555339c3461d7d1bfd47cf4e43df14
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:77834bc71542f6c87c1e39c82513bd9c2007017cc4866a2d51be7694a198c950
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:7a0b186fbdb169ba82e3ff4a0beb8a3ac2d1ee555bd37182ee9d92a945093b66
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:2b725421986812ce501db94fe0ae5df6ae3e2a8bb31be6aebe24e85cd1ac4703
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:9cee55eaa91e073f07000da0db87fcca4f34af6faef16aac79415197c3026e67
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:0b9dbc00f7f579c37197ed3c5fad6e1420034f38418c21a6d83e57761763e715
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:762ae8d88d1b9e764adf84d5eaa964e691acbebaabf174ab0111a39b24256aff
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:17a2e3c30f2a59f402723dc553564ec1289b6e2bbcedb9cc353285de9f5e42f4
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:aff2c378cd0a3ba36b13572a4749a54836369bcf6814b8423793bb56178b974b
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:4de9442def18fff03515edcce7d4c60a756f3b2c225f8931a8ddd254d70b220d
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:b689ee70b715a65b664a2e31b5ac3b1a70d6a7d2abff28e99013094468c2e32f
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:bcaded7338e5171707c02a04216fa1bbaa5b57c8da9af0df91347ad6d84e0d9a
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:262db9468caefa25b66176fb3492c5b310c249ee1035d866b6a1faca30318ae9
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:a4f11ed7ca7a36516a88d9e179f654174b4654d71b67f2de3255a95f9929a452
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:78fbb9cbf3a7323a1d235e33323033957ae9e610bd0e26c493b407cfbadde258
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:eee2a6b322f695529d9953d06ab021f0ea0d69b9a2a2f7c3299b0ede8106c102
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:38f65ed06100af8f55530fd79ed5064f3839863caec0f610385abeea0e3c1efb
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:d38a886f70d079eed24b9fb57030f535e37524d6f7baf6b1022be1c07cc32ab7
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:1cceec46246ea7bef481549dce1ce91880d19a5650c9a6bc0f71f0d4092a6f95
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:753458389b93e2dc76f7d8766345f7bdfb3c3ba23d76e938b04e724418981e73
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:1b5f810b07f1830f4b71a9c384465806ea74e264770a90cd92cadd53c7d7e1b9
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:d0d9f66e1135e46889d9148a78704a0062baf69c4690c85da37588ccfe4e23dc
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:88be52d369e7862c378fa2c6bb0b5f7801bb68d773744935816411e549d51112
        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/addon-manager-rhel9@sha256:b622c7a3e14a3d80b01c66fffaf5fee108767fef90976d7ae981d79bfdd1bdf0
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:147e0635014afe58dd58af3d006095c8069e4746fd753349378435363add304a
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:083fbf9b0eb35119bb95652e3f8cc3f38f2ab66b38811f36938d19efb0f09456
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:9556277ac54246d8132dc08c8854992b5c478706ad483e1bf2e16c5e2aa04a04
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:878fb0eb1102cdefdfd7d266869a0a8f7cb19a1b8f0e5741f75755334e67c887
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:e97bb0c19ad0075422f4afadf82e3a5d6bfa24bdcf484777486d0d52c9f294b2
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:86859614fae3d7f6dccc051ce90b055d1b4b6f313d9b85187bb6dc06e9d59ae2
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:34714647e5ae36f266b3d68b56abbd0a79c8f4e05c4c9076cd0f76dad243763d
        - registry.redhat.io/rhel8/postgresql-12@sha256:af1ab437b165fa4ee9dfd6ade637d7de5fa556d0b3851fb8edc78afe0e6fa95e
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:d90b77447584cc5e03ea8a7d732a57ffcb09a4d0a0231ec41ff5a67e96a42273
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:7c9fc8014eacde9e9e598823815acd4ea61d5128a84c79bce914fe77ae276aef
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:951773131a05b2eb4a39ccf568b23cb633c926546e43227d5f715e73441b0b89
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:5b4a878a07934ed035dae0ab1b86eff1166124565226af5739dd8aa16ba90d50
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:cd9f96afaa76332885dd7762906681e32ee7ae8ab268e036b0f9874a10a99d57
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:f4c21f87dd7b725f472f51829bbc40261788e0f64c391ab136a3d6d8d9235872
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:0f813721abc29eb84b94b9ec6abbffa64d984bd7b5b76a810ef454a70da8ec93
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:03466cbe5b770e1e7b124109dac09840cdc6ed1bec56de9b42dc7cb8278d7f0d
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:f626f057664e3408ea5fd778e3d2a4e80735ba858d76749a1a2056c65face4ec
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:e9f7e03889d1151381a65cc41a3fc24e97b7e0169c43c91bb8dff54a6fa7e837
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:462fd64a59c1915d91d628af10415107b7ab4b03ac322a4c77687064e5f89421
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:e9b9e2dba46fdced4d9276082956b34f1223dfaf7f6da600efeee5a42317754e
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:05b87e707d6e0b2fc4cea9a22ed5b0c23cab8a38ee4cc9e8e5b9f4059e7b2dc0
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:55388553b68ad695bbde73addc43a68fc4523c4477f979ee1e8103b79dbe0bea
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:6028387bdc2e8cb2cc62a22ff242d4c4315ccae94fd93fa9ffd7585b1bb324f2
        - 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-service-8-rhel8@sha256:03446585c076f6f9983dd336e1ee47c3955830b94a5e81c5c256d627ba675030
        - 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-installer-rhel9@sha256:9520707d782b393e2e34061c18b269a1b610143d8b06739984776101b08db322
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:b583869a3c3383670427be20a3b01fa5eba42c09fae0c8401063b0461831277c
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:eb2d84f5038c12c558bbfbc9441c18337051d0ab64264a0574232546fb9fea33
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:61856d12d173d98c9cfa6596cc9b19be38e8f789712dd742dfa613a1d585f53b
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:92bb8f1e74ca9d0938d92f84f85ca047e8abc6be6df54eb6d8cd506f9393f6ba
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:358e8a39385d43077c2464d1cf037e3358c8eeb7e84958671acb1e996f070d25
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:ef9d311b1f5b5b386a6fc224c0fbdd8794c0ccb4e6bff11939c8332f48da8fe9
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:eee3c75b6eee3f1c0374cbbeff415ba8e28b9556edbc76d2bb01a10246c3bc6c
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:9734a109c7be60f5871132379e8c88c0f92a9a991943de317040ad8550637477
        - registry.redhat.io/openshift4/ose-aws-cluster-api-controllers-rhel9@sha256:2f3b87c980d89161d93ba27ae379537ca9b603aed6de7b03e1720885231fe519
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:52faed21cd40448dd4260909e2de026155afc207f1ee26b396a75b6099830525
        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-operator-bundle@sha256:f40e7955ac649c383134ab6e77bdd521b75b21ecd9b476436405d0674c7fc855
        - 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
        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-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:ee3ea20acb92c12d1808076f00a179da61e632888e8e59e0e2b8b5caf053246c
        - registry.redhat.io/openshift-service-mesh/kiali-operator-bundle@sha256:35096e1737e500ad148e9f5ca2a14554a5e1b4f3104782f00e8322352e365833
        - 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-ossmc-rhel9@sha256:73c5c6021261336e50b34210f7ca4926511e8f11ff4d29f1305a0236dcc19c5d
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:99fd79555e907c2a84d0ffabb07fbce41313f800dbcd73edc6ee39773b5cdd23
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:bde79c700c879bae1bb67434f51b3b202d7072de771cf8d86ee65b5539b9e347
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:3c562a0583789ef34b25715663a66fc099c418d067e8cabd3c16e149f995d3a7
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:5e0f84a7ea17f1969dad842e2b8a7d3d868987e93a8e07ed8c2fab029618b8b6
        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/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:f182078b0077b6df6d47ddcab0204e963c1475486bd61b8eccb73b46eb8b2995
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        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-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        - 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
        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-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        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-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: 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-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
        - 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
        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-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
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7c7c42fff63e0599bb943a9e9617b43181360d5a5254b27f368010af275cf0c3
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:b03f4e88ab1fed4744356a584d673fb2fdb15de7e1de7786bdd222b853690670
        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@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:bbfddd7cb4a6cb7a131a0cef174054890fd39956d63e737c92fe8233ad8f98e4
        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@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:791ac512370af5cde1e089de3def760e7dbce69badc03137051520ce316d63e2
        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-operator-bundle@sha256:2808a0397495982b4ea0001ede078803a043d5c9b0285662b08044fe4c11f243
        - 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
        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-podvm-builder-rhel9@sha256:9efde29746c28defaabce25c2f0c6da7567ca7dc7fe97845886d7d9e750ea094
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-payload-rhel9@sha256:7317c2d8c0ac8e542e39d695851c4add301593d2b52af80c77fd4f996efbe2b8
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel9-operator@sha256:b59db913c24f866a700d7662f3fd2de238b4a71550f2f04673ef3ba62ce35aa6
        - registry.redhat.io/openshift-sandboxed-containers/osc-tdx-qgs@sha256:86b23461c4eea073f4535a777374a54e934c37ac8c96c6180030f92ebf970524
        - registry.redhat.io/openshift-sandboxed-containers/osc-monitor-rhel9@sha256:3c1434943628c01f102615115e89e384b4d46ccf2fd6c0abd5205917afc4d05a
        - registry.redhat.io/openshift-sandboxed-containers/osc-pccs@sha256:de64fc7b13aaa7e466e825d62207f77e7c63a4f9da98663c3ab06abc45f2334d
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-rhel9@sha256:408eaaac58d01892aa2087153eda6f451788c02b8b719dca8e710a8916b2e081
        - registry.redhat.io/openshift-sandboxed-containers/osc-dm-verity-image@sha256:0eb5efd518128ac6df93fec2e5d24c4c5662d5407e016d1f66579cc9ce4529ea
        - registry.redhat.io/openshift-sandboxed-containers/osc-storage-helper@sha256:c9b31c8acd23c6925d6bf193696817f14a52b0f0fcbd8459023b5d69da93482e
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:7b2035904ec464fe32c55ace525f573a491b046b5ef7cd5721d7a67cfc8dae25
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-webhook-rhel9@sha256:4a533f77a4f1415b8eed0d3f5a4ba9d62edd329bf304f26f23b0c1d886dddb71
        - registry.redhat.io/openshift-sandboxed-containers/osc-must-gather-rhel9@sha256:e4bb201c368afbc80eced2aea0869d152e026253a14349a01e2088f5dac5e214
        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-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
        - 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
        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-daemon-rhel9@sha256:7421edb9be136cc7102bbe8f263108fde6cce3ed411afecc241d8551ad56961a
        - registry.redhat.io/openshift4/ose-dpu-rhel9-operator@sha256:82ea8006f9d969c4b6f9e52d75ff81d7129ef0bee37ad7056769b485c0760aa9
        - registry.redhat.io/openshift4/ose-dpu-operator-bundle@sha256:2b968beb8b658b8f16257842d2594f4489116adeb76d5965b7642c982ed9d18c
        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/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
        - registry.redhat.io/rh-sso-7/sso75-openj9-openshift-rhel8@sha256:2d4ea7226f43e7e8e8d3fcef6d425eb5104a15acf07791355033300b80db2901
        - 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
        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-bundle@sha256:c542bd411eff7a4e875b942b23452aeed8e5d60e606f87a73e16f48420fa2400
        - 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
        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-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: 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/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        - 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-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:d5b404530b7d6ca8c7eec484dbcff32544c3ce8727a4d61c703396ae3fded62d
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:a0f327daabcd97e59a855450a4ac642e45e8dbffa6a5f006f23525215f1c1a22
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
        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/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:64537ae6999feb2c7e449d8d5a1cdf5f64450b45934a7dba2b82542a5f6adc20
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:0a2285aea9606696c4ea75644f2019bd199c6632de4b7f459f4024d5b3f66048
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        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-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
        - registry.redhat.io/integration/service-registry-sql-rhel8@sha256:6c97fa8ead1f6f0323811f8f35a80ae33f0e160f6c58f2bdb31713dbeaa3f014
        - registry.redhat.io/integration/service-registry-kafkasql-rhel8@sha256:fc97a2a08b2f77d620ea86ec77bb4f750bfc0109ede3ad1080c2cb694019f8b8
        - registry.redhat.io/integration/service-registry-rhel8-operator-metadata@sha256:a2f0513cd8b96d71855464384cad7f1cd8c39f8d445be1ff1c1b91f22008d16d
        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-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
        - registry.redhat.io/apicurio/apicurio-registry-sql-rhel8@sha256:0e5b7ed0d9c2aa07896f4d1f12c6ce6937f31a72f8d496b95c9c151121f46758
        - registry.redhat.io/apicurio/apicurio-registry-kafkasql-rhel8@sha256:f8f826084f842293de019ccc9ad0268e4ec0957e0db8fec58b069be2d6fa7cfe
        - registry.redhat.io/apicurio/apicurio-registry-operator-bundle@sha256:807f6c8f10a0f14789605e0dc64506e7aad7cce7789446da5079a49e79b8721e
        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-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:3101db7b7f493e476ffe2c91083792ded3e2030d431c3be7d7176ad7df185324
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - 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-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-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - 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-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:231965a888729ba42bbac8d844d128e18468e5a21916dcd525d43ef028ccea5f
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        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-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - 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-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-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        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-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        - 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/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        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-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        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/rhdh/rhdh-hub-rhel9@sha256:d7ae2456857cab09a9e9acf69c9990ef18deb7f920046b8c2483fbfd0d42bbfc
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a93b382258a34e0b56ef6616a8490e5f44ef1c6aa5d29c0d08d2147ae5b440e6
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
        - registry.redhat.io/rhel9/postgresql-15@sha256:d5f3d496ecd55688e384cc0627700a97af6924582123bcf00749c375724af3de
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:95ed239eb427c7b1e422ece28c5277b5018efb751c2b472bf502b8216219c047
        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/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
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        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/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:b4934c45ba595b36e65c73b734c58d1517e7f43b7cfc309ca8bc853733582f76
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:c044fed8485a62a5051ac726525da546936be22f268db05491bf81582e0e6194
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a7ce92f7f4aadca2781c44839bc357615395587bc8b68a735642967cf8694362
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
        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-operator-bundle@sha256:5a19032dda9a0f584b41cbe9e729ed23e6003d90ebbb026eb9e7bb9769d4a4e4
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
        - registry.redhat.io/rhel9/postgresql-15@sha256:74377f5a61dd7e3e0ba5d2fa880b7107025433a026396567c79eac927b4212bc
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:2ad8c87e82df27c2b6ceba94179d1f0a40fe775368663c1b5572611888e0e02b
        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-hub-rhel9@sha256:177a7308f61a6b1ba21bc0f7bf550a93d4478e52479e2c94a2437f2152e3d8ff
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3b2cf972e1ced0a46d3559da4eb1a1b32c50457293ede4958a13538a84b45316
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
        - registry.redhat.io/rhel9/postgresql-15@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        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-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
        - registry.redhat.io/rhel9/postgresql-15@sha256:990be59eeb55860a62455375fef7795854d78ce15ac3e7568b9bdb4680bfcd97
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:b5ffbb3cc1caac4e020abf1d711566aef859b08e479ab181e5b39ce9da7a5b73
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:54c5cd2a4865a372ba9465908f73928382745e04ad446c97b28adde213d13309
        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/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6bcfa981a7a75c242a16afa6dab36bf6e3b8a1442fa863875919ad551f48eceb
        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/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - 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/odf4/ocs-client-operator-bundle@sha256:8417c655f110b508f858c1ff2a3d0315e0dab9baba9afec846f61c71cb294477
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - 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/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:de6cd74955a0403d8ff97490a657b941316d69922e901fa3513f1837fb8d981b
        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-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/odf4/odf-external-snapshotter-sidecar-rhel9@sha256:87b5909be13793b80ab8cb916458c8863bdff29a7391630af0707b39080b8ebb
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:a7a7533e91939980298a9b097ae535a40fb179a4f4d26b3194b13c396b845d17
        - registry.redhat.io/openshift4/ose-csi-external-snapshot-metadata-rhel9@sha256:da5c73b33774046408736738fac6e4bd82fc0f7c0a6e966e788941e81746fd28
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:954212cfe5ee83f95fb844f0b59d2c5230c0a0a0135ab4953f24e29ef4cd0157
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        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-operator-bundle@sha256:fc0ee45511674e99f3ecd1b807a660e4bcf49af77bf5d66af935d1cb16336bc4
        - registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
        - registry.redhat.io/rhcl-1/limitador-rhel9@sha256:aff28d76f9cfeefafd6b652e055bb25e1a2bf250e062e3e9b5e54db873f9eeb7
        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@sha256:0f7d8c9aa266a124f571ca2e58f0705ec7257e2cc96f353dd5c41a6f9de00f4a
        - registry.redhat.io/openshift4/pf-status-relay-operator-bundle@sha256:14ac9f4b837706b9ff92cf899f395e0c9f3758d2ab5c1f2e094a6ede45b24023
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/pf-status-relay-rhel9-operator@sha256:d3429e65675d7b1bda2158db44a771c3b55fe6a3f269e08fe6ff9ef224226772
        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-generator-rhel8@sha256:4c493a2d690d0d7c1684c53d15c06b47d691aeffdde6dd471b6e75fed2fec6a9
        - 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
        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-generator-rhel8@sha256:bee0eeaa7898af835f80c5217059d73361daa42197fa6cbbaf416e1ba373eb54
        - 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
        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-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
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:323f7d1fa408dfa958afa2aba0fcfff69cef78073a9b1cd4d70d3908e46fb8f5
        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-generator-rhel8@sha256:dc39b79c360511ff999eba5b2c299db3e08c9c244a0a1f3da8c90c02695e506d
        - 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
        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-online-1-broker-plugin@sha256:2466a336c0d78b196635de3fad636aeff2d9265839f7271b8ef94f3ba97d9bc0
        - registry.redhat.io/amq7/amq-online-1-standard-controller@sha256:070349af30cec52fa8efc185fc940077a64bb40e3e36310d7cc6e39ce0971436
        - registry.redhat.io/amq7/amq-online-1-agent@sha256:f98ed8ee97ac59d8fdd40ec8b2c063a5afd360a3e183057c186e7a77a32801ee
        - registry.redhat.io/amq7/amq-online-1-console-server-rhel7@sha256:1dcb3d0cc7bc6e84f4f96962ff88849511b7a7686a1f5dbd9300c4c2c8c05e2f
        - registry.redhat.io/redhat-sso-7/sso73-openshift@sha256:18d15980f28f0d0c6b8582131a1f062d84463577512875b5391a612c3d7d1096
        - registry.redhat.io/amq7/amq-online-1-address-space-controller@sha256:9acc555c8e869aec7d72f53b60320e1a96cc82d748638e0d50970837229fdbee
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6d489a7897bd831ec273034f1ff0e223427a40afd01b9835ebb020a8bf9ddc66
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator-metadata@sha256:d6d0e71f5451e8255edfff87ef28ba7743fe7057efd53b25bbbd01bf9e1d0307
        - registry.redhat.io/amq7/amq-online-1-none-auth-service@sha256:a013fb1806c002b408a7753ff943cee24fbcdf8a657eff1e9582c42b5a7b0844
        - registry.redhat.io/amq7/amq-online-1-auth-plugin@sha256:68926f434b2f6ce4d9698938bc3c53d514c21c3f76c73b6b4cdf7fcf51f7cb0d
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
        - registry.redhat.io/openshift3/oauth-proxy@sha256:59b20f23c03d0012ec5c95c4725892ee64277c22dedc9d0a90a7b6b0bc80fc72
        - registry.redhat.io/amq7/amq-broker@sha256:1ec0437bbd82722148fdbb02dc55682b114c311cd6f521a8bc621a8c1cb4b32b
        - registry.redhat.io/amq7/amq-interconnect@sha256:5ebd4c4a0ed0db2725ae466550c915531b32933c420344cc2083c616da3f326f
        - registry.redhat.io/amq7/amq-online-1-topic-forwarder@sha256:de33a701339d91a4e9275f7cf65f917ff75368a59b8ab36dd66c90bc306875aa
        - registry.redhat.io/amq7/amq-online-1-console-init@sha256:0970804909b82fdc3d4e7d5d88280e41157d743107de8bfa2d1baa1367543176
        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-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
        - registry.redhat.io/apicurio/apicurio-registry-rhel9@sha256:fb3fdbb49017c86c25058c824d833be061cd4f51cfe6b43ab5d7f799f0a87e78
        - registry.redhat.io/apicurio/apicurio-registry-ui-rhel9@sha256:9daa045d14192754950aabb4c0a741f29ff4f0f431cb19c12bd1268ad21de639
        - registry.redhat.io/apicurio/apicurio-registry-3-operator-bundle@sha256:0c29e835e253ff6bc0dfb2a9ca01e94756c8995f3396ddca07dde95c9e16e633
        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/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:3a398158d10018bfac5df291d6998b513cf9a30e5477bcaefddcf66d229627c7
        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/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:2bec31b0c5407ffcecfd8b860d8afb1629eaab31a250f60191f94a824e0a52f4
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:0905ba3f5cf87780a1e95b6a00ea7cd340d4ed1b5054e4b2c82406270baeaefa
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - 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/argo-rollouts-rhel8@sha256:b5c8a6c7438a45125fc7fd970946f715ab7193b7446d625fae80dde9d1f3f914
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:4c842f0ea8f0e9b53eb16d94488fc2f4298bd8e4be2f48713be9157da24549e6
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:ece2fee4227ad1becadca47028b78ceaf8717a98ec84e3f1b5188a135c4b093c
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:c779ad87a7f71d851c2af818abf16e5151c43d3fd54e64eac2fc7117c00753f5
        - 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/dex-rhel8@sha256:a74e0a1fe3589ebe9f226a2bad20e9a5d5601a0e62c5f3290902f466f55b7160
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:ed530db9b4a29fb591ea208cd0c6b3b83b49537ff5a0a4f501b54ce667f9b303
        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/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:31bdff225bd825d02ce0f468b1edc77541ce85b7b9111f14a583c418c984232f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:0b926fc9eae775425faa1ab9709a36fdac15afe4bfe523720e17ecf5df45bb28
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:42f809f32f1d43186b849e3cc78063d3ebb2b54c55b2a1b77908af09a5ce044b
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:eade50b8321c1b2e0a8ac4dcb34596d43dea0a137b8b97b6eb68c6d469c8b200
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:0df37cf0a0e48efae02a0711c6da61c6165e7856db97097e98d56c8b6a137bb9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/rhel8/redis-6@sha256:c4a98010f7dd5faec2047bb9803061704233a8efc930be2a02386ac16d062d86
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c94c2167dc957856682a104b9a6187d3d321dec71ae794acc0dc37794d2cc373
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:959de6a95ef8978f66fdbe1033bcaa0ddeff9a376023e5d1d2698c5acb417305
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:7ea96000768b3cf7711150531c4c1c7edff2c45a2f29fe10bd9811ab6b281909
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:4d22a7a6cc2f0442889512267ae3d9356f05ff0dfdbbe137c3d8ebebc24818c8
        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/gitops-operator-bundle@sha256:80198f65f7e3f9022a34e0342e9423807b855dcb7bda810172eebc9a27afb5c2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:73918f3b3c507fc64006b7a500ecfa9d58151d694852f696c41a4412edffc78e
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbf3038daf7c797123c511f9a609c3485cb1a5bcae53c614fad17e0a65fa7ee3
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:7d82c719b1cef64607d30e8aaa5ab293955771c5b1dbd430e0befc988a43356d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - 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/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - 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/openshift-gitops-1/kam-delivery-rhel8@sha256:1cf485a889c7586cb4944f000b53c0e97d08f97ba14e580bec57dad7cb13712e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9e0fee30842a16d7b8a39d336123c80c5271cb2ceb50759fc7ee51a4ed09ceb3
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:33bbb88343285a0510670384b87d0226dd6de8aa12c78b68921362c4d6f5a6aa
        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/dex-rhel8@sha256:e87515d016565bb69cb2c2ac40432e0127dd2cb20a490ac82019836032ba15e5
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:f04d565eb5162fd5a9c78cd8443af6a3b184a660277537f1d6d575caa2e85441
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c02dc2c79ee24ce5450ea4e19493ac2a1997eeb5bfd359291642c529826d0cdd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - 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/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b982df02ea7c45a7603d83fe82cac12e1faac303a1b72af6a727512bb97441df
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:3f2804bc2af437ff1f06c214b48a1a780dfcfab995650d901c03270057eb9f3c
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:a366229e6ee26ebe2d7f765b2a2da6057a29e783835655b5d97545ac563b541a
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:bde11fa83b7e708677b08ea995041f480b88edfb93e4a62c10380d101c0a349c
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d4d5724f67859d24c32f0f5735f5af3e325f77db97f58bc7f17ed4b831b7e534
        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/kam-delivery-rhel8@sha256:b7d3c882fc25fbbea28951afb197d4d47ace253864889339396e20f0c6897a7f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c369df980874aae270ca7bc6455f1ca45467d75d25fe80d7bcb06a7826bdeaa3
        - registry.redhat.io/rhel8/redis-6@sha256:a9f30ed08abcab0122556a5485fbcf6e0fc03860f19954dcebdbf5e754876a45
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:2c45cfc01f9ec7577afc09cadc4c1a6f470836f6a0a7c24d66b791913f89bb05
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:773592dfb9964970f444871a8812e8b74db3f205faaa0bf148defa1a2b87b649
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:7358787959af7e7e589edfc043a97d80ebab87536bde365d33be7a600071bf0e
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1112160243f227a5d393eeee165bd4fed0d3f42646a9280cbe9af60ef728aeb2
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bcf6b3136a5e71803cb518c8763c165bb46ee37ef7bf55503911d7fcb36b3a8f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8096f824bd96e3148cf4b6936766c888d1fff0af9e9d0be440ae4feb6adc03f2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:cd4965d91c163160bcf43a02c54ca60b8704281c95de904f904df942bfd83bcd
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:97e32825f59c33cca7d8dba3580095205c20435ccd15b91cf0aff37db9841e0e
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:42a79aad641e8607fc339e4ce7f9cf1d258be01f863dbc31a94d2c27edb645bd
        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/gitops-operator-bundle@sha256:0b1771f697a700263c5b827dbde56a5c9bab610e9d7df55ef93885a4e54cc0e9
        - 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-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d41454824632475f0e88aa6e0031ec643bd37e1d575df36cd3ee63daf1403281
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:911733d78ae6f36f642b4d63f044cd102b7eee170508eaf518ac7acf0f339698
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a9e2360f00c5c9840a100a6748bd905b8f34169140a33fb0ca4af9cf6db71642
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:5bda26e2c16beebf66dd8f3c3c55d48e2f00db870f2d9d4d44570d9d3b8bddb0
        - 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-haproxy-router@sha256:2dd72760f736ab13e87d6e507e654c390d2d6af3154c6adb85610b5f58085b9c
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:4d945dd1a6fc0e8b6cfc16f4359128f1427b094e76efd4ff31325a1839246107
        - registry.redhat.io/rhel9/redis-7@sha256:2fca0decc49230122f044afb2e7cd8f64921a00141c8c22c2f1402f3564f87f8
        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/argocd-rhel8@sha256:1935460f871ad2cc9fe097e1a7e32a67b4b4a3c58aa0412cffc28823f4ffb49f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:2d361df79b6ea75f15eed2d6726303351298b47b4fee75aa8aac255a19e1ddbf
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - 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@sha256:1a4d9d6d6c917a161fa3797fedf722a1ba9211eaa4c52cf976bebb629eabe40c
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - 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/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:636d307f13d82dd8984e362490fb3c8938b05d452e65f44c7c247e7fc4a8be8c
        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/openshift-gitops-1/argocd-agent-rhel8@sha256:56ea8e384f20a903c9b42da1d244f0ec98c77916e4efebb53f876e459761038e
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:eb6bb1adf263abf1cc4f297f9db8289aff4c8bd73c3f9b8968facc1bdd2ee17a
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:724b4f15d0c255cc9c096cb44331ddc2e6456d4909d03ce463478af76b33304e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        - 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/argo-rollouts-rhel8@sha256:c02ad9e0709fbe52a34d9e8c146c90782cd49e351ce27e74e299cb9762246562
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bafe22c773f034d4cb4c0498f2f669abff23927378b424a05ba13b196f242710
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:e1101b02df32a56a9aec80639372248b72963240dc86add446d0d07da65baca7
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8ea41862301665deb2eafd16fa19d4d76663cd20829256b575ba7090889cff82
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:d5233a088e71464f08d05f8a1f04efc236684634c89afcb93dbf3ac81a740a82
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        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/dex-rhel8@sha256:89263c0ed73f6f3bf6f73d9ed32c459489e1adf2b423ab73926b5343064d88a8
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b4d6b30d562e1cacbb1ca461e8c14b95c0d42be1baf876599c446669f2584feb
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:684edd8ef336440fe06964bd977c0051ffb1b4df00c47ccabed710c48d19bbc3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:d7cec49c3e3ef02a3378ecd94f64a7e94f5ed93b5e7e6ff81f8d758eeabcb7c0
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:d5cf5da89528ed1505c0695183f432f1501b0226ce6402e84b7895ad14620d5d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:772adc241b808829d62631a288cef0b3d9cfb617f00d84aa3893616e48e30885
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:337d52feb9a42ad04aa91211f41040db48e2de3a09266a516183882f9f587a6a
        - 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/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c0e231e430daaff0b7a5b06f9b8628a2fe0ea3a82a314d42a364fe7f883f075a
        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/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        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/argocd-rhel8@sha256:dbcad68b70ab7918e944099aef4177c9bc3378e9ca49499dbb94a175927d3209
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0cc4fa704e581cd5581c816668183f602fae6ef9ab3c04ce0d99d561287ef140
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b22190de3162d3e03481cae8904ce563912756eea7ac7e7feec0acbbdae5e6f6
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:e9e2f950cda8153cff112e43872b98e4977d3cbdf59713b8de92defef6d34b6d
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:06f1150114d4c0bd236d2a5d4716c9c3e95a9733058297790389d6ba2a1bf264
        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/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/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:c2f39be75173b4cc57498c5845b14c464bf9af92b49716df9661c8135ac2cf7a
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c55aadf45397083bec4e42d6c0514ed79169a07fd3d9d75671904df2c0520e52
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:26050fb95978e90e8d00e895032045e77cb236008a0e1417459e1aeca8a48c69
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f1371d2012796e9aaca105112190ff89ec3d0be95968e05b19db101480f67975
        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/openshift-gitops-1/argocd-rhel8@sha256:f77594bc053be144b33ff9603ee9675c7e82946ec0dbfb04d8f942c8d73155da
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8cc59901689858e06f5c2942f8c975449c17454fa8364da6153d9b5a3538a985
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:16d9184345e6d5a19f326a7b52f76d8a59b96763f233c50546ff017a625e5ff5
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0d13c03048b4435d9f5045a6fb7bd4b8808461b26aeca60c0047fa5937e1d45d
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:8aa68fddef88921aeeede24a849d3dabbceff01dc03185342c21e6ee58033eaf
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b2d58f4dc20eb7e17e09af0e8c5de55fa04f9f4f697e10c6be81a7a6a08381b2
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        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/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:3873d1f18b5643e1de2601419410270342650a21428bb26a4cbee20c0c63f98b
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:86012145d4b8798dc12f6f4f07a9316a193188aaac865e324b63f4e60e8ec584
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:43bb961d847477902e66a92edd1539322cac8d5f74706b048a458ad037a0c7a3
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a568c8c647e2e2d6abdf12138eeef8f8bdde1fdcbf786e9ca8c8f93bc79acaf9
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - 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/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:136d3a936759e112d3ea2e78f7c02bd882b0fd3011f4c452f45c32c43822772d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:80f92842fe4cba008a873ad2ab6059a3a24e76e16671d8ece034dbbe666996bc
        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/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - 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/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - 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/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - 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: 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-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: 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-controller-rhel8@sha256:73db97d20ee9415e9a8941cc6a36ed81d901d760d9949e95e10c90866ef8bf64
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:59ff4966f4f653e49d42d97bfed6351d3730128db74f666ee4ecacff11790baf
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9f9f8f69ab98c1f25cc301572339e0cc5c5b76f2e29ed26e10ac91ad20e0090c
        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-controller-rhel8@sha256:2e0b9332a44d8d9c23e19c7accab0813a651f39210257820db508cac28876595
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a2324acaea757bae3b01b1aec59f49f4dd79bd1868e69d3418d57c210a6dfd9
        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-rhel9@sha256:9d305bfa5f20dcdec7dd826670814ec8a92c7c177b00b9bddaae4c8a1cb31403
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ingress-node-firewall-operator-bundle@sha256:82df35fea3406d71cb5f49f06098ea2946cd3efb4685b662eee0f60d27ecf33c
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        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-router-rhel9@sha256:be9dbcd2a3a1e1e536921390dcfd283fc45dc4423d2705376ef37a9fb53f7cf1
        - 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
        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/service-interconnect/skupper-service-controller-rhel9@sha256:61542c5f0989f51ac5d6c96f5d0e29aca75614b79e7626299c77c5a74636b564
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
        - 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
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        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-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
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        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/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
        - 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
        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/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
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        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/ibm-bamoe/bamoe-controller-rhel8@sha256:3fcd9ae0bc194c198cbb5ee94272e80f302658733e467766bd1789357e9fd015
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:a287a2fbaded371b8fcae5e4124b2d905bb228f94da0fc899ca2600b378dca0d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:98e9a6618558bc8a1b9cb91d1c9b3380968d335092f6e953d1abe6af96abf65c
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:6cd0f07856d612dca46b0a01a93b796f7a0f112b98cedfd6754f9fd770ee843d
        - registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:5ed8821328413ec11859ae317679f0692afff9945f134fc8909e07a3ac387794
        - registry.redhat.io/amq7/amq-broker@sha256:792c1cb19e62519cc47d834650fe5a6a6ca589a37d0b53d4f4549e80cabae3f9
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:efa55e17190b0ebe1618452f786876ef354b8fbec25c316aed7ed5bb1ce88116
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:25025e489c15108edffe5270d257e1ed9be0a67aa067bcfc184647793aac2617
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:fb326be806b337b0ae1711f974d15e073aebcbad77aaa1123a63cf4f331da5f2
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:191237ccffc476e764714a69e35d9421dcee5ddd7184442d7a8306a06b97e6bb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:457fc73423fa94591bc7e35729a25c58d3465583afccf342fb338b6e11188575
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:b3b7388b3b116ef37aabbb04b5d2c3e36e58d2fc95f1e59795b423010e071fc3
        - registry.redhat.io/openshift4/ose-cli@sha256:b2b93def4eb5edeccfa2d8ba22e493646325842674dff0446b45677bf641a342
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:01bf97beffb3647968aae052cdd401d6d562c35f3e78ac483dbf55c44a71dc2f
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:c9f08ddc6111cdd74faa0db5721d5730fc7716fccf4dc2a658595f7e0c184c10
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:82d8ebde7eb3ecfbf72e5b71e7e392d3a3597fc084b6cf35e8fec23bfe41210d
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:2f1a7519617b5c0d082f943de0db295370649d968d699d76cfd829f4c9826a0f
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:3fd45f2dabca7220772d823275a5697b42dd35f53c27671b093117933ef2d4f6
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:ef1d77bb085172f927ee53d1674c85e2acaf1f580d7cad55bae8bf2c33c49c01
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:c3553707936cb9eee8a6a622643f72c91e1b0c11add5ec9ad5865242a9e133b4
        - registry.redhat.io/jboss-datagrid-7/datagrid73-openshift@sha256:4056b1cf8ff5995f56eecfdc087d9ece56a216dba6bd73acc5693f0778e8d573
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:f714b9c1555e7f27a3c9cf2cf687a74188f36b1283d4e09cec4db3c084d9fe64
        - registry.redhat.io/ibm-bamoe/bamoe-operator-bundle@sha256:54df7eba0292459c0491ba39c15bfcf793e1c0aef042a4b3f6c587b0d45f77af
        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-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        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-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        - 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
        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-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        - 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
        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-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        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-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - 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
        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-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.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/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        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/tuffer-rhel9@sha256:775b261b8f258b369213246f2da5c91218678acb5e3b8bb4670b143f487767af
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:571c48ecb2658ce70199c06dc483ea48a16e032a764a6830388ad845f508d981
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:796860a3e85712c60398c36983e0ff4d45325c7a4de869da2ebf1b6ba4b19825
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:7ce611aefdfedd8b2a633def482cf41f390c95b8f8c800b6163a585f117a9e2e
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:6131053778ea04e437f3005f90d1138aa11ebc58e3a9295e2a8d8ef6713a52be
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:3b8f49c41df15022f8ffdf3a8f8605b14c14f4e10eae754a06a86b6585d158b3
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:5a752cefdaf28bfc53847185cdd5fef1ee47e3dcff8472f8a8bf7bbdc224ef57
        - registry.redhat.io/ubi9/httpd-24@sha256:366cc5bc3b96069fecaa0abeb9d3510c507e69a20de1d205d881da8ae8561ab4
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:329a0dad7842d4ef60430b0e3f188231bea9e579427443ecd42eb62a5c282266
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:603a2ffa54df0bd45ff42ac710dd16331560eda2be93442232b045c959773c4d
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:76c24a38ac89ed632d38e44049f37e4997abfa27fa8cadbb8afb42575031296f
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:75f1049431f9e92898a4217870309cbbb3b39c8362e929c0bad3b53cad4459db
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1f5a30a285a16635a7234c3c1763dfb385c8bffd605fc862b782bdb5c6c61ea3
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:09b8259ec9e982a33bde84c7c901ad70c79f3e5f6dd7880b1b1e573dafcbd56c
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:dc994a95be22b0f4bab022fc362c4f44c6a7d1887a2eb0d04870d75654ec013b
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:540556453c98db3919e5f305a99c699e767e2891a95fe7527ace578f3c67a308
        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/timestamp-authority-rhel9@sha256:531603563c69aac6905cd6b8157d30781040527404ac2313acba5a9310e0b713
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:640633823a54c11fe2a8b3d05e571399fda415b6f0b3adf1ba9806882a94bdd4
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:6270ba29adf779de5d3916d5e82f1cd9491ba89d4ae2042347b6ad6d1819dd26
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:eb38e98dbb9828fe033a5388609132f7246fe77d2f4d258d015a94ea30752b24
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:7c4e739622f68cd924afcb41cc788cdadc34c725283a097e564d620f39637bac
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:a93df3206409de75613d398e7dcd8b30ff7cc36eb00349c435784f73f00a2335
        - registry.redhat.io/ubi9/httpd-24@sha256:badeee0aa3477e61de64f6a2b93e8a3673edd38fc860125f7536506f3d592132
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:030986ea26f33db3a192c67a93cd2bde352f23c68a17b062fc062955675c3c51
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:1c2201d50469d70ec6e21546c7c74bd52251d420dc1dcfa5375c1cf61dd3a9fd
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:12b438ea70f83ee6edb12c96b507f92510f4afba824eac34c8f50793c4199db6
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:fc018a45b7eb48690c46c83f52cac55fa40089e6b02686bc21265dc7c2205b8f
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1d782a127d2f8bdab633f287cb2df2e400ae91bf5d4b913473539d8512dfaab6
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:09b4aeeb607c88c72f69e6f87cb840c82ef5752c64a58fa13551db749fac2530
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:02fbd4772c185edf38fcee4e5c5e1c9dad82b77c9da824addaebc445b67d35ac
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:fe31830df2d99359749cb86cd1ac2f32fcc3de07aae427d2f2cd3998d31d2833
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:c22cdb9a17f85e13c00412cba83aa644e90a0faea0236029d0f1c53fe212e227
        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/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        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-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - 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/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        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-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - 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-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - 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/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        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/lighthouse-agent-rhel9@sha256:5ee9a8aff7bd566cc4633c5191c40d7370349abdbfe19ac6e0588956f879c0c8
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:cd29afa47105e0b49b0f640651c16a73d1190c84fb28aa6feee75d5e89b40b2c
        - 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
        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-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
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:a66dd030eb99207b6aaacc6b7c7cb5182901da836ebf50373c14f8e5ecb7b642
        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-hub-rhel8@sha256:32624f2bddfe8b6b9c6c1c3f2be541c8c61be29680d13b6d446e8874bdf8e219
        - registry.redhat.io/mta/mta-operator-bundle@sha256:f3d585e24d65905b2e9f594dcdb67721aa95057ab7587ae531c3487aa2f94e53
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:1df881da1e20c2501caf53e1cf59b6b366281d842f0948ca5f91694ec1db829d
        - 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
        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-pathfinder-rhel9@sha256:a2a8b6d204d99494a6a005e8cb1fbd92afdc84dc01e4c1de4ad7d8798bd83741
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:c35f3ed429a7d351cb8c2d07600b4ad35615a5ba08e5cc9f8b9bd504aea3f7ee
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:e59725832547e80cab58077a1b6e42c313a4057621defa841f35c0a7627f149d
        - registry.redhat.io/mta/mta-operator-bundle@sha256:a13643117c2867351718a872f7f1b2350c67855ca73a727a1dc140754ffe6589
        - 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
        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/openshift4/ose-oauth-proxy@sha256:af879d8b9b5e396a5308fb675a1d6dba6d70151b9bdbe7829362e081a6adab1c
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:0e1ec99af5666a060176adc52612f20209e3398a9a5a2aa1dcff11ef260b2006
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:1b5e016046d93b6a2674d63f08e0a46f8050e785bd58fd94ba7a70487efe7e2a
        - registry.redhat.io/mta/mta-analyzer-lsp-rhel9@sha256:0c8f59f35a950ea8b45f16cf71362128ccc335b58a996a099384fd737dd6ff90
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:18c611415589a093e16e9c2f2fba9f3c83d9514f79c8e4fde9704ef0679ea4d5
        - registry.redhat.io/mta/mta-operator-bundle@sha256:9eeb43af2bcab84f5261d1575f7c897903a7696dba011d256abffa1fe850eba2
        - registry.redhat.io/rhel8/postgresql-12@sha256:da619f6617d99790b4fe00fdb23ab4aea0cdb0592590162d51b3ef94aca01a7b
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:d554cc36748fc05e30eb10e6fe816ff6aab2fe07b61cc60e9d93de5c3cf17748
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
        - registry.redhat.io/mta/mta-windup-shim-rhel9@sha256:e2ea89055936d7ad229b5e890c6ba234c6cb22d8b688515ed4d6a34848efea83
        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/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:ee2c8ce2af0be097353758d9ee7eaa7e6b3fcd5f2bf5e04280e450e2b619d2d8
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:16cb28d683159ba71a5d7c233404ac1d6b7a07a374b46d24effe551a13a596c3
        - registry.redhat.io/rhel8/postgresql-15@sha256:16faf1ee82382263408f713ee4002f47ff13c82d4545e8a69d5b0ebd1d289330
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:30a3b1d5a70dec74a9253ca34f18bd8f2cdfaa68b85b0b25dc395158c2596330
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:23c97ac122eb7cd1e953df8da968da420f6db8708baf772759517aca4929748b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - 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-generic-external-provider-rhel9@sha256:4ad19b50cdd6be21e010155f2026abf0dc865e72aac1353e35bbb5eeb8320a4e
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ac38f1c3d34bc718928eb20743835c99783d846f63a3197d13839ea22f1634c8
        - registry.redhat.io/mta/mta-operator-bundle@sha256:6aef520983fe01351886e108d32b998b20e74116fc0280c754a914bfad03d0bf
        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-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/mta/mta-discovery-addon-rhel9@sha256:2dfc51d5398a90e73273b3e332f70d7ed94bac05e12b142fba22104ecc929436
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:c0643c05833dd1b70ed361bf56c46f56ed6536aac3106b92f0d85b83da1b9d15
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:70ff3b5e429a8fe0c68752ee05c47ead885b59bf9c8d7235337801270e7fc1de
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:4cde2c2df482293bd4d6b86a344336e13d2f9f81b29323698f603e656b14b190
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:b10fdc78c6f453a34a3d306313dc29fcb3152688a6a1d54cd236d00d9fab88af
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:9d6c02f6463771e747a30126de95fc0728fd95fff4ddfa6c70d828c55e0b6790
        - registry.redhat.io/rhel8/postgresql-15@sha256:dd4aec2775da1cf187c0839384cb16d69268e9781d4330874bbc865f98153a7a
        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-dotnet-external-provider-rhel9@sha256:9748d954ad8654ac203257286497ccf19cfdfa211fee40449cbe732ff48c1176
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:8ca00460b2fb64583a247f5b906c19743b7732b60ff8215f1baec12a766c61d1
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
        - registry.redhat.io/rhel8/postgresql-15@sha256:854710b428c4c1132c448cbe9ad30087a8a4b3c33ae9c0c3a4de21a15c0ae642
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ef57a58e609e244333d35681a164a1d3bf382c0eee37d33c993b018439814198
        - 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-operator-bundle@sha256:68953a2a721309fd103e09f3171d0c9d50020413631b575f1a44602a5d2ac855
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:6118c1db15667851f26eb2acf6060e045ed9065459e3e649bbdd0e2625d825bd
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:80aa13813fe121da49e166d81d09d63749393f3375c3b96d762d0b09c6685ca9
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:a93cbb575ff59bc8015602165645204b9ca56e327308b11a3d75b651701db875
        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-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:229197ca303eb3bd553accde1c29546916b128ffc7e43961b520c8e375e07c84
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:fda12c5ebf9de14d17d5d49239cee9815352f6d7e75926f7226d9f5bb0356909
        - registry.redhat.io/mta/mta-platform-addon-rhel9@sha256:a288d5a156006695854c2e76d09dfe356a31136efb72ba4f85f24940a5aac32f
        - 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-java-external-provider-rhel9@sha256:8d152829867909dfc98853a837ab50dbe4f09a331718010e15961e5468fc3db3
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:acff26b2dc0151443b592c71065c271a2f044c985f32365b093685c5e224f3c7
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c97afda6c66fd862738961abd73471f1ef4546eeb2157f13da264205d25e3455
        - registry.redhat.io/mta/mta-operator-bundle@sha256:75127a29a68c19490c96b4dde9146500c38b640f4ddc1bfcb2183372f3c4ce50
        - registry.redhat.io/mta/mta-solution-server-rhel9@sha256:08161faacb63d0842e8dc4abae5922fa84c4c10dede31bbebd2f7485884644fe
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhel8/postgresql-15@sha256:68fc74033591a7c7608adb438a81ffdf232f199adbc7c92df286097debd815d0
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:95393ff3b7f90c2077947d46e539eefa4305d01679cab40cdc27b4a4404256d9
        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-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
        - 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
        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/traefik-rhel9@sha256:7bd1c5582082949142aead1db07b45d41840c58c14ddf18b062df45283e1a316
        - registry.redhat.io/devspaces/devspaces-operator-bundle@sha256:74b83b79cba88af0545e7fb52dd70df2c1b96cf23b8963517fc779fbfe3e9aac
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:d26a9f4fd48c83bd488ebb889ccec7d65f3bd49e2c94e57c98971a3594d90612
        - registry.redhat.io/devspaces/code-sshd-rhel9@sha256:938dfb964aaae293190273034af8b09c5a007d614afa09b735756f930b34666f
        - registry.redhat.io/devspaces/dashboard-rhel9@sha256:09607fdeaf2567659a10148c50b19ac265b4a548278b800682ced9d975377cb4
        - registry.redhat.io/devspaces/pluginregistry-rhel9@sha256:572df83aa7e8ac0c198731ece8dd321bede3848fa1e6f2e3dc7bdfc5f8942759
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:af847bf3d0220392de2f8d56fc3d431add3b31986f8200a4758d287b5bd7a6fe
        - registry.redhat.io/devspaces/configbump-rhel9@sha256:7f33a59aa8d1820f8a99ed20eb4b7192c1fb57414a8bc83f5432b8ea2363bb0f
        - registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
        - registry.redhat.io/devspaces/jetbrains-ide-rhel9@sha256:b6e79f77712ede50d385d477b1d09a34ec4aee074785d385556a12a0a596e582
        - registry.redhat.io/devspaces/udi-rhel9@sha256:bb5baa05f316944ca6df56ad718c368b248e8f4b2488551549b1b13c4ed5844b
        - registry.redhat.io/devspaces/code-rhel9@sha256:7b68bf06abf4f2b948d21ffa82401b44f26965b093e4875653344ae2b7fe46c8
        - registry.redhat.io/devspaces/server-rhel9@sha256:fccbb4185e7694f8c53c994b04e140306a72ed8aa5a6befa7f0690f21e4c19dc
        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-jobs-service-ephemeral-rhel9@sha256:b9522442546f5daf0d2481794e9a565fa08c6db9b6db1f9e8c2a7824b2562e33
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel9@sha256:10503b5a1f1629df1ee61d9009e720f625c05df515078157ba5ed683c1308012
        - 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-data-index-postgresql-rhel9@sha256:071078f5f5963fb07d0b161fa925c4681045229778cc911800a54529a14b3797
        - registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel9@sha256:6818e069bf9ab89cddd5cea1c2e93c6dd1707c479cc21f116e33d8e6db345ad8
        - 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/openshift-serverless-1/logic-swf-builder-rhel9@sha256:37490d642d03a627f434d806fffae5b0e1245a4fe0d5fee6b13bfff162314af1
        - registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel9@sha256:e51b77bde368c4d34b9e1536677c1bd02182c2d6ee3a999d63f213c6853510ea
        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-operator-bundle@sha256:f2270236ca0f96bac3d2f616b349b3b5d44ffa3889fa91838508be3d9b58fe3b
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
        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/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:32cd9b5812506656ff9ff1c2c9fdacde44f179313ea2bfbbc18564fee635ca67
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        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/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: 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-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
        - registry.redhat.io/rhosdt/opentelemetry-target-allocator-rhel8@sha256:fd3fde1995d4271f5e4c36093839c369f403211b3fe9d3a4e09906efe8d000d7
        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@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        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/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
        - registry.redhat.io/edo/external-dns-rhel8@sha256:17f4127cbb9a9304769e9655c19cbea2260107c7e9371a99a9aa3e85d759c00b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:0a86a1808d9906eb57886d3d3cd5c04cf9578a80860342132d36ecfc411bf807
        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@sha256:6263a78b2a170e56dfca2173f14dbf14f0a5bddb6ea600bfdef248c7d5f20e4b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e33874a51971a90917cf437fc6cbeea1da569ba07217f66f1bba96d594f58aed
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:a614ec94c2468e34e129e9ecd4bc0d1895eb67b96e77eb5ad94cd8bd507860f5
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
        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-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        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-operator-bundle@sha256:c39816efcfdf1566636ab39ebdeb6c2c26c6d3a16a050eb2364548a555cb62b6
        - 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
        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-framework-addon-rhel9@sha256:f60071d35949e2e53cb0b8eec84f7d5c1e24bfd5f3165b34707059b61bb98cb0
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:6c369fa856f18ef60d25a57f0588ec5a0bef18d0226b957db5e5d597fa5158f7
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:d31e3e2b0126f94f12f9eb0af37c8bc08ccdeea06b61068a04d711cbfd9e3b99
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:0bb769131d07651f425b823e759746ea9d9af1e1006d610341f4e49188450f2d
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:7ca1b3ffb295e55b4b6d08ffad5d5a982c8e9d8ce7638eb956ea877580a57975
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:a74270d8ec7d1d64c86e80fd2c67d8dc8bb0a31b30b996de737491e3c7180e46
        - registry.redhat.io/rhacm2/console-rhel9@sha256:94cfe0cdb4c01ff7ad602bf0ee6af3010e5b748363845d2205070764dcbb2eb2
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:b42323be8ff41fa98332a5b2fa31af73a0da9605ff746122420ac46aa8f4a8d2
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:cce2e0c3e48140e70a389821f4238e53ea496473d3ccd74b045059bc3cfd2982
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:dd4a7678648872ea4294b867cdc7bca0ac063b81eaeac9bf5d4fddcaffb96bac
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:f99086a8e828f25d96249048905743ccd5a21f184b21fca62d01650c898a346f
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:7f86f9a33460384c60e62813e665b89bb6288aa3a4d56ca09040063d7b02b9bc
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:4628b05c002b6186d07f1bd6bd670bc2f65254168532d868282589b1da48e930
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:b297b4deda5906897b8d1949ddbabb6fb90224244ff2b6d86139110ac900fd9b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:467557f453bde3feaa0129f38c52fba00c3b98acddbf8978bf21ef13a9890fab
        - registry.redhat.io/rhel9/memcached@sha256:42a0c2506b38ce9f5ee744a299cb135781186e628fdf7c09d2d35ba3b6decef8
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:1b1f6f85af0910f1acd029f54a608b25d3a2977c3d8b323266391543324305b4
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:bf26f5a794224b5ac6b5a7c7457f345914612610d24e9af563b92eecea614eba
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:91e009061d720b1d1e5a6deafe295fa4dd7d7dd0c6fe17587639a623ca07159a
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:a72ceef5e2f992ef6d593978623be5fb15a10f1a5276a3bdba0364d26aaaa0fa
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:e20ce08100730812c47977fd754c53d3bc47ce13f57c0716b3f6487fba939c8f
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:973f4e668937fa9faee550fdf8451c74354f48756c54471f5f1a63307e4e5a66
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:4c09ad98d2cd3a41f5f437ee7023137ca57084430e00fb44e976a7a687dfadf9
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:afa4337370e8ea6da0e25d62c7197157b85281916a1fff4c881eafaf14a2c3e8
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c13557b24b0a172deac742cbc4b6dc6b09090170c0c0a4a9c0dd307a00c54661
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:ac64da0f40dc39078e7cf604293471e20ca627e90c381826f1f10136c21ac1a2
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c3d261bd2eb4842c279a0d35c754699a484ebb320617a893195088579a46fec9
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:940c0564ced75b7912d3ffc923a1f6bab9aed0f4a52962f7f894d08937b7d37e
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:7a5f323bada97dbe0ad204a64f714c0acf37e9d261776a24f0cc7e0122327354
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:2233fe74d4d9cbd226e130b314a546d5473515e0389cd19c25164c6c543aa54a
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:6cc12edafea8f130331797349cc9f1c06853cef5ee0a238d20205894a77aec96
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:0e137637b57c5c77087f3f0cf81d22c2eb9ecfd60ba96c90ff1e363d2650cf84
        - registry.redhat.io/rhel8/postgresql-16@sha256:776f420f734f9c1d6e0589fc6d9acee8f1c2bfd1f838348360bb9db584920602
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:f84cad07033b005bed36048f3e4bb00a613800cffd3d3892bfb1e3ccea2a1c58
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:d28520c44b861c75d1de8544be8b3a8659cb5695c0ea0e7b4ea3a9adfaa26748
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:c05ba064ebaad51a625361ceecf30b6d4bd28f3c5d9efb279f39c98afc050a75
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:ee59f307e468e2b7b38f7c040898d587d441f8fb3d59cb022ae23e4717739e3f
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:f6511171c82d52fef18533eee1d6511f3850c5cf4eda2bd9007a7a8642d0a1c8
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:3491ec932d90112e89f3a4cebe5bdd9ed6a7811f116df43bab8bb5f827129361
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:b8f8f931f498855461ff997f73470fd957a5f32719a62c993f07050e75d76bfe
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:a89c3f88ab17823607e3c6af022991263b418b38d667507d4c522acd590680b3
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:e53522a9ce0e3adfabdd809125a442b550c11c4c753d9665794c8ff640b86895
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:97049a14110198594e3ae815748111262359970937bcd6a83d9c98a70bbd134a
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:dec26e10f2c5c0da5a3d2be3d22255c08c55c3afcd9c9c34f53b29330f74efcb
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:393c385c8d4424539cd95b9fab090f3015e0812a3688beee83c2c515f1235f24
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:3cdc71fc6932406fb44dc0d162826713a515d7b032ddb8fec5582bfa9a9cb937
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:39b5feb4dcf91feb124adfb629c14ec729f96860c6c16e8a2c05b6b2348a6b6c
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:f930cda4750df9922781fd8fff84b9f4df219679cd2929e58961c9371dc2c5a1
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:c058a4198b256d998f85bd8ee07882f42628748d827bd978d4a70af05d411665
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:17b7618bd0d09665c97a9ad835ea6389ac4d1540f3675f6a34851916fc19b923
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:973eb3ca3da32c87ba308928a21fbd25514b2f6a6662300d4928479cb554cff3
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:57f28e416e9d84a9d690b6d262a4263d8da060a3254253c68aa7945414f15535
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:b83f150ab2dd851e3662ad01f3057482e5f454e28d04d50ce1c321efa2090f33
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:0684f07fdb2f648182a8410722156decef4ee503cb1eb66274af32d946bd8d80
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/rhel9/redis-7@sha256:b4f58ad83ab8719a2e102f38ee526546cd1d56428901afc3add45c9a0e2a2f12
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:5a86ed779e8a9f68f121029ea7fd21c37a4108ab3202b35dbb371a2b0612f215
        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/rhem/flightctl-alert-exporter-rhel9@sha256:2a1f1cf703782cc0cb07a8c6f950eadf209f47baf1186a2045210eda6b6d8246
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:490ad6fd2150a463cc7783342ad8ffdd5753af9c76cf27dd3266364439e2b6ab
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:4512e39b757445f9d3d523f121319620208bf81642f39006fe491cb37028a429
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:1621430aed061d140280a41bca527d616b4801f6dec9684792e7372a75fd778e
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:d589008f69fdc4738b2384d1098de2beeb7b7d2ee3dd64309d4f10308ab40afa
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:0e09bf9106e6937212b83c989657f8984547c81b272990cfe6b71158b8966a03
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:e27e5adc9169479aacc701677c740bb21c12a81d0df4a55442605d3dceffa91b
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:ad8ee7504e9d69edace4de3b119cdde99885677bebdbf0a6c11d3e62d92d1aec
        - registry.redhat.io/ubi9/ubi-minimal@sha256:34880b64c07f28f64d95737f82f891516de9a3b43583f39970f7bf8e4cfa48b7
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c1a264cc0484c6f58dd9915cb6575605ca3d6b1c2dc20a4841fc7afd906a8833
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:833837b3f89a4c9f8925e32c7550418169a839ce14b12915d85de6af095d5847
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:296062e27abf3c960f042757bcdcca3169d9e318627d2fcd94ff6fcfa72ae2f5
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:e25d8d0deab4139ba82e64666074e51b4d9c768f4e5e377483bf1d787613d33c
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:91f98eefba17fb0766eb3d6b94e7cd276a1ee5baf6c39c153929b4704b3c3b91
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:265e3de1cb6b823d2165a109dfb2fae4c7647ae543c920fe66d566698d851360
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:6b57bada2bce96583d5f80ae4bbcf4cdb54fcd1a214e75433e56d626e4a7f0bf
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:78c00553182db4b8d923c33afcf64617499cb5c701314a4c977673613b8fa5a6
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:de5f2b08ea7f938bdb8764bec1401d6ee55298754f91e912e14fc2faa0bf0796
        - registry.redhat.io/rhacm2/multicluster-role-assignment-rhel9@sha256:203cc1df7f09512c1578867722c61fcb90518c19d612e9a89b7b626db2805ea9
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:5bf5ff559fd9f0c06995237cc235d0939b44c023612e0179a9bc8de99cf185e5
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c5bc42e57f4bae70f1e0b2fd1de345d0f1ef7e1e41fa6cd790198bcd2023bc1a
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:cbd55d9bfd2056b3916581e51e547225b5b007c266c670844fc0881ed2cc67de
        - registry.redhat.io/rhel9/redis-7@sha256:bbce339dd580334f0e1019a31d97b053796bd16bdee79745a3102a22ce2983b0
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:b70ed3f5e36043f6050d6d71455acbf0ac9f6968a26579abbe20e47b71e91203
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:90b919807421554282a06cbb5d2e4b4b376b686a884e62566fbf257351f5a31f
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:a4bd68cf7b12b5f9b133983c988bd668f1dcddfd090b9912ee3d069d2f9d7517
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:fa26debe735df99a87997ef107ea56b7edf94168b98bd02bfe146f593c3e58c9
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:7a050603905f8cd0a5545b87475f077ff5639cff3c1c72eba0e6c9adfa1136e2
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:b541e86af7b6b458c58755f092147868164c2cbf0b239239d8331876fb6996b9
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:2b2a285276dcbce1863b2bf535042d3a4cd394f11cf73adc451226e53af54ad9
        - registry.redhat.io/rhacm2/console-rhel9@sha256:f96a68657bd4eef8c0fb1c9d86203e73fecfea62b4f87425caa1e5f65173c0b7
        - registry.redhat.io/rhel9/memcached@sha256:14568dc13790fa3d8827e3ae7ef7bae37096ef32b8a158310b3e489bca5a0ab3
        - registry.redhat.io/rhacm2/mtv-integrations-rhel9@sha256:4508924c255a6f352c3868b281c7e8eb19a6d857e32fa5f59d925875384549e7
        - registry.redhat.io/rhel8/postgresql-16@sha256:d64b9dff3ebf4a277080adf043d4ad56efc7b14a646f0ea72b911f58e28d50cf
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:c0fc3b0eeda8340f8ca684c215333c50d7896e861b6f899d4c93317c90f21d65
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:2c8f89fa9958f0422c6ce6a1acf6e6343967c78d0966937fca19e27e52e7a428
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:d8645f5266b1cadb7fc8139ae1c8e77732cbbe0642f52547df536e9fbcecc03a
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:19630eb9d520219cb515c2da23090efba4a15f3bdc6539af695c5b546c35d61e
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:4228de3d4a7d2240e13cfbb9132f75792a9c4b86e494fb3bb0ed53f6df267573
        - registry.redhat.io/rhem/flightctl-db-setup-rhel9@sha256:2aab6e480a201e202dd7f670caa27838db2c219e08c2726cbea5e7885091d639
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:eac5ade5fc49b724ef33c05c81bf960f7bec3f52faa2e44db249d05bcc45c280
        - registry.redhat.io/rhem/flightctl-alertmanager-proxy-rhel9@sha256:1d59b2cdbc4824ae2a8c1b32e7beae87331b410bb1f24c5216efd2629dd08a86
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:a7b322fe65406009776e894d98055e848abe38f3c6e4c5ec7abb40321c066ff6
        - registry.redhat.io/rhem/flightctl-userinfo-proxy-rhel9@sha256:357ce9e08c63c1f91512dcf01fc1073d3d44222ac1d97306709467282e4db9fa
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:9d486e0652b865d109c8fd7592ae96b43c1bfcda6ce154c11d6b91fbc15eb293
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:1c73ab166a99713bb9a7e17d347150213399740849524dc0a9471804c1a80d61
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:a88b2a9ec0b88483294f01848cd35548d82607c8b76ec4f24ad87271b5d7d56e
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:0ef909e3fa2bd636c2c727bb86ae86904af4eafa77ef533359c52727567e0c4e
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:3ea6921965c3f90b02a8e71287159f0771cc9fb5bbd37ab8c594df235e79d9fc
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:e1bc46429dc2da167e27400cce84af2082be150f577b37f98912371b6d684bbc
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:259bda37cfa2785051894838cf660a22564a36739eed7f25952703bf193c27fd
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:5f1fc557bef7e06ad285e94e20e4c1bb4f2b8b31c6239d195fd93ff02a530f9c
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:029a326a842d7645fc944b177234053e416517747ac6a6753675555adf2af328
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e2681bce57dc9c15701f5591532c2dfe8f19778606661339553a28dc003dbca5
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:ad124178d2f0d7e4184a1c18445a916e289629b382d0ed9fceb76ab8eeaeb6fd
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:1054b185a0118a9752c18ee6036c486f84d824366ed879d2ab4594c542219099
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:3329ee154252a8aa0f6208a59d21fd93198c01b42a1022a7310796ece8eeed0d
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:e30dc28359ddb8fe2ddaa55e43e69cafed9ffe3a64fecebcb03a850a64fe2c59
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:22a6b529dbf9aa27d15f3260bcc6acc1300bb6ac9ad60f47fcc115f24a5b832b
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:4f78bd465a4892788b85f2817c4e950d98fede462a2cc6725546bedc68683281
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:f22a55f1a6c720d83532a5af45e7aeb1593163f0e467290d2ffadbf4bb8b10cc
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:435b0f0df603380649b287ec8e0be94905501badbbaa24ae99450fb9c3f20378
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:79c843df370a7ff57d1f9fbba162c252729b7de331d88fb1679b54544cc7caac
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:34e66dd3f7dbc4760c8c6d3c9feae7bed6ff3357c8ee5a1d16e058bd496f7188
        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-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9@sha256:688729db8a70fa8e3a37a1a00f62dad124b6b6f9c90e46503873bbf40a066225
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-operator-bundle@sha256:c5f8be89116c08822005cd5026a7fa5b9c6ccf706a076ff6b0a3bd3c1991102c
        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-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-webhook-rhel9@sha256:6b23062ab592c3776ff7207ce7caed878474566033e45e377a893c4bac01de82
        - registry.redhat.io/openshift4/ose-sriov-rdma-cni-rhel9@sha256:276e01d4ce0e9407f5f67e015af36ec552f61303fbb7b2d45de5beacdc417937
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin-rhel9@sha256:6508614560de3d333fe93d7c72e6b6a1fffb4b5fd75632bf74fc686eb9deaf80
        - registry.redhat.io/openshift4/sriov-cni-rhel9@sha256:6a3b0070b671a818f094f78073279669c9646ebdc668f7099e44d007380b6060
        - registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
        - registry.redhat.io/openshift4/ose-sriov-network-operator-bundle@sha256:b85986a39227398c90a8f178da7859900b5eb09e5e77949ca698e8a675904195
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-sriov-dp-admission-controller-rhel9@sha256:f14abff38a42cb72299e58b957c6f0f09af5182208800a4a6ed55e57e4ab5f28
        - registry.redhat.io/openshift4/ose-sriov-network-metrics-exporter-rhel9@sha256:41b94f5b270e5d57b2130de47b0fa25796bfcf64c4dc771058ca0cd433404c05
        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-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:8ae52c3487c3eff996800be4321ef5cd594a6a451c2cfe9ed283c862e9fa5703
        - 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-virt-v2v-rhel10@sha256:3d927816fbd65ad819444432c6d80907143944e0fba525826edc10c8ca568849
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:8bde2126f5f8a6e1ca6b84c559c83771c8580fae0fca338219e94cba3e908e29
        - registry.redhat.io/migration-toolkit-virtualization/mtv-cli-download-rhel9@sha256:220639596f63897fecdb261d9faa7a8f6c1b1b9661c26e449336e3e19585d8f9
        - 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-controller-rhel9@sha256:2cbcb294f707d4832de3436df5cb35b442f8db69d24f3fb7c66ca7c2579e7930
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:7b5871df7274de2dd7df16f311fe97b8873b88032571d83216d6e61820aa288f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:4417efc0a042ab078138d5a83eb1b32e7f1d6ad90f69efdab40ed43c01d1fe30
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:018f9305c10388d368b8a29ef6a827494492df23a3279265ff3e41971e1dda43
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fe352650a328af67ba8cb331bafb320f0f147fe8a41782311206b8a6f0255552
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-proxy-rhel9@sha256:d990f6ddd51e468aeef329fe6c0c083ad524e6b72d8dc4ff8fcfe4cea4d16156
        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-rhv-populator-rhel8@sha256:e91c2e5473f3e24c185dd25e9843f333e6d7419d9c5f4d4396669717b5969683
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:c543dbbb66fcac02345e1d3c12333780721bf049dca0f0a27d4c55b15a5d3e14
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:4bea07e101740afc36a1617363a79b1c474efcacd584f6e475a53b3f2395a079
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:a65780c5680a6fbbd0e3d0eed423b14a9c9b3d7d17f801c1eb6eb6b777384ca5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fd6fb83bbeb9010f7e91f0afc91beac0bf38cb79c2de8f533a2bd07b1b238262
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:365115407964d182de7e7564438c6fd089e2c0bcc0f94ec48621ca0cc2bf0fe4
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:936fd68d7659683de7789fcf34d2e5873bd4bd1534c01c2d80501647f7c3c442
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:6d0aeffbccaf9df83b42c530bf82707aa7c1cc16f72a5ef30b66fbd562c01ab3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:1dd8f0f08ff1323d910fea8adfa13cef64c2fd2f01968e4d9d55f71cf42835d3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:8c05a303be5c536f4051ef291475b578d4d38ca0946fb4b4dd8bca376ef432aa
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:8337924489a1747d4bbca6dd6ac42210731cf721b549b5830846b271621e2ac1
        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-api-rhel9@sha256:8933f1a8dad97352e225e1a1f7f0edbd2820fd60ff1d0c80a49065257b6ca9f1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:80fdc43060387a455d177019de81ab274dbdf754b9ab68a61696068d9c4bfaac
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:29ce66f04b7339725d0e3dd7d4cfeca794c33e917e0deef00c44149a86a1c3b9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:49b2a58eeb994c5398f31e89abeb2959b079207de29fae876eb8ab90a2f79b95
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:931b5d94251a065c819b3e1b39a9d35e0919174b98b0ffde86dae71a15f2f1d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:930d472f486c74d36ffc3e9ed510044e15745a6350503b386f5221c82df2a7f6
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:d6ca7787981b6229eedce40893280381abfaa124dd84be3bc1fb6f043a22d2d1
        - 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-validation-rhel9@sha256:d2f7d3e51e225c045376eb435169b2a7b11e0b7de98d11e78d2a21d4540565d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:4861381a24d81f3f25153af9c066839be83cf74adf5ec900464719197611af27
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:84998b76aab53a0ca9a83a6b8baf3cb408763fba07008e3c892e2669740b481f
        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-gateway-rhel8@sha256:12f7a8e69a1369a51bbcd2b34d4ec8c66dd1fc9fb515349a04e7b202953423e3
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:8650430afd813fd749fcd80ad5f6fd0aeaab3df048e8fe34e6aa72a07ab801fc
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
        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-operator-bundle@sha256:d3a608b37aa089ea46e803696ba4957585b875f8a810f517e891f385ad105937
        - registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:ea2229948fea841343fcaa337bb7e2854acf5f563d3ffb0af8bda1c21ec2a91f
        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/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
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:3901127db6a0cb2323651885f04a603391478f58ad2d5bcaa161a9e16332288e
        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-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
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:101993f6e65d6fda8b90c583b718b720809182961f69bc777295f47e6df4d7ce
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:efc835326cd0bf95c479809f9e02c1ce921bedd3dd2a8e67605346ec623e4032
        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-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - 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-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - 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-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:e140415e0361cabeab192ba6d22634283cd47749dd25e9cee4a775d3c409cd97
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        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-rhel8-operator@sha256:d2ae3defac36f00112c6b773e13626336ba15d6f50f905ad1c33f122bfe1a6a9
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd5353bae134c8fae833257a12641b12d0f774f1565ce66f63c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:4b7796235a0a545db83570add7a675fdd9d82b17f931eb81d0cafbedb1fbf22c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        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:36ea76632f4928c6c34087d06b942c44f6d5bdd4f1828ab4e5efe36cdaf0632f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:92305253e5770277b74bea6f4bddcb918664df174ac1cf1bcfd84f261465f9a4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:023478b773a0c42739b86e822a4d435e01ef341b8136566ea52463f1b7e447ed
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7f83cabd3579472283c9a22e5722ddc58b14bc819fa9ba8d2281560920b392e8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:eacc4fb55e8c4c30894a51944960d536508001a49fda62782c6cb2ca8767961d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d71506472636d940b5dbd3e708d3e0448d777eeecfd38de61ba49e281d2979c6
        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/zero-trust-workload-identity-manager-operator-bundle@sha256:3776c07bfffdf464660750d69bf3725aa74dfc1f207ee8d1f408a8dc6c11eabb
        - 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-server-rhel9@sha256:6a14fb03c3b7256a405cff52ae0e5c7e66b1fa1a8e3a955d6670123f5534d4e4
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
        - registry.access.redhat.com/ubi9@sha256:dec374e05cc13ebbc0975c9f521f3db6942d27f8ccdf06b180160490eef8bdbc
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-oidc-discovery-provider-rhel9@sha256:70f04312f96851a37ec9bfcc605d6a7edb4c87b548621007183b7caa2333816a
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-csi-driver-rhel9@sha256:5359e8709d1b73386eddef202d59b7c511aa5366ca04f5ee707bbf760977e55d
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-agent-rhel9@sha256:54865d9de74a500528dcef5c24dfe15c0baee8df662e76459e83bf9921dfce4e
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        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-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
        - registry.redhat.io/openshift4/ose-ptp-rhel9@sha256:bb0c3bd53144f85bea73066bed2770b0fd49a9c019f56a9f6d6f92e63c8afc81
        - 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
        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/workload-availability/node-healthcheck-operator-bundle@sha256:e60e749a273732fa4f3c570ecdb250f71e747b81fe379b5ffb75282d293032a8
        - 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
        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/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:1bc7b2785534ab8d8a9a00e81cdc961838a817df7c3c5d4de527b0e5eb697d9a
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:55e3fb0c0f140fa98e90b639cb0bf933874977d5cebaef1b885150fde7dcc77a
        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/odf4/cephcsi-rhel9-operator@sha256:4a25fab343836486ac80c25d69e3d5d1223911085a5e6a7240eecaa1ed7b952d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:87990cdf6adf9a27e9bf9a4d6935d6c7328939da223bc1d145b0991b2dfea25c
        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-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: "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.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - 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
        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/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - 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
        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/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
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
        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/strimzi-operator-bundle@sha256:b9dbbce235b7a4f45f42184cf0b908e91e17094e971bc29a8710f35127a6b06f
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
        - 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
        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/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
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:b46457a0a7f63518bc12b2789f75afb0e44496e62de918b9b584129c7078de86
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:026418bae8b2d425d45b2b3481f65c241d89e25f455e3fbfcf2f79536d978bca
        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/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
        - 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
        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/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        - 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
        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/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:5d1e188d3e7b12fbb1b94ed1ac58ea059609a53243ded1bee6d1f179c2b48b4a
        - 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
        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/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.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/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
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        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/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - 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
        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/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
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        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-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - 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-operator-bundle@sha256:a7ddfc685797cc2f2d26366b6573fb46285097adaf0727198cf19e91c8dc5531
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9@sha256:2e146263311f096251110baa0a88bc49b73d76effe5d1bcc4f2b8d1230206090
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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-rhel9-operator@sha256:635869f91d1c5be205545396abf0d6d8c6b2a4efedfb2a3d10f97a9f13b936d2
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:2041de7d28a07fbc593ef975b59fb9470b5a13070d4eff9ae225c6180b3f9417
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:0d937371ad5b44f668e96d35b2fbfe189b72f5ec89ab55faea9359c92d1026ab
        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/fuse7/fuse-online-ui-rhel8@sha256:ef229a4c8851ec495f28d0eeab83b137cd02698e283f76ea1b32271b7222621b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:4f8849362e9ed6ff95d318a04e287b7ba33254a2cf7abdaf9b90cab7cbba6646
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:fcdd0292ebfc7e9edc36241f63b54a9d924a7605329c934ff2b10373af26dbbf
        - registry.redhat.io/openshift4/ose-prometheus@sha256:7f679d6c03535e300dac366f4bc6dd8d781d96dc47592836713f8bb76be36fa9
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:5048cd4fab2f98e6000bc60835c539cc40b70dbe265e927cfe185595347d8054
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:53777788253eaa1199e1854d14782619aeec0df9844d86b83742fe0005671cde
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:3f0277e2c278740307c9b2d966f539ba12317e306198cb6c4c1c52a2ad9f4f40
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:5dd1bc8f6b7e724736f4aeac86409bda3e0f64f62b736688e9572d14411232f1
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:df2d55dd8092e9e94d034166890117cf5d1cfd5cf52ef0f90cfa2374cc9e2d06
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:96810c770f75057b8bba6b78a5ba414c8289315d8af1a387f681ae5e4fb7d6dd
        - registry.redhat.io/rhel8/postgresql-12@sha256:44215c5b244b190c82d9d371a8ffd39b0c83576bd85c980cc72782a5cf9e6e1b
        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/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:ac514973ec428d815d7a248d09d27f2a84f762aedfea63b3b48de9e633267ed5
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:8b9bd777bcbd20b1a1bbbc18274a5076a67bea1f928d772cb243c57fb1da7408
        - registry.redhat.io/openshift4/ose-prometheus@sha256:400a6ee03c3200c19b9b15c5d037a849633156a62e13922fb2e62838024ae69c
        - registry.redhat.io/rhel8/postgresql-12@sha256:9248c4eaa8aeedacc1c06d7e3141ca1457147eef59e329273eb78e32fcd27e79
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:4de91e4527022e1b25df8d3835ddf778f773c20334314be9ba01a885c82287f5
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:e3a13ea8b84b9e1abd158d394e11113e5f6c04d879547fa1d3e8638f1ac979d8
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:251c29e81f8e338f980b475b841647a977807908c388f4c86e18da7bff1b198a
        - 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/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - 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-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        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/amq7/amq-broker-rhel8@sha256:75d5772c792a7c795281acec3d59e90021c109e9d7d1110868be0b882768aefb
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:c668fe1f5d25baddf627acd79df4c8d2ab8b05309d3d41784ddc0a10dd5f34ad
        - 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-server-rhel8@sha256:d6df09b15599e776b49e1d46aa01728fd02d5629cee65e77dc277c0166554e0a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:eff9f8edf28ccbadcacab2022fff9e6bc93926af97521b49e3968eaf7b6fda65
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:f65600506db985689e5b7cd8b838e646d4268a0c4e272e19d7db3577a8dd7ac4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:31258400bb37f4b8837ef294820f8a728ae83f8031d4e01ff0392690a315a30f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bafd85b0fd1256b8a60a2bb368a7e68f5dbad72718e5059a65660e01a425d8e2
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:60d5cf00411b03af3f1149a2bb3aeeb196c063d19625f876a094ae6baf46b54b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:13e9ea359cbcd3e0e94a6589b86b708dc84197f152701fd4092fffa234d11b58
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:c3e95e808eecba8ac57632452d3553509131ca783f62c68754a582cf5c55efab
        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/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - 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/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        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/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - 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: 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-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        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/devworkspace/devworkspace-project-clone-rhel9@sha256:3f0619571d6fa2259796f837ebfd0eb0fa225054ac38ed0d144245cccce51515
        - registry.redhat.io/devworkspace/devworkspace-rhel9-operator@sha256:5382d54bbd3ade51a7dda1c8a8a86aca30fb5655c61a4a4e85ecceef7e36f168
        - registry.redhat.io/ubi9/ubi-minimal@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44
        - registry.redhat.io/devworkspace/devworkspace-operator-bundle@sha256:e2b731c676f12ff02781f0ac279ce4aa3652b6e24e90eba5880579c49b737adf
        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-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - 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-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - 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-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - 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
        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/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:a4943c0563c45ceccfda0a01e26be3a01c1437c89d927714c577bf6060495958
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:fe916630003194dbcd3894dd880cad8b15a041a5e534cd8f76fde6296db00797
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:61fb98802490323bb03ff4a7060334d8fbda9e9f95cd6366b29b1b6494e4ef8b
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:7dd11d385b3d5a178566d901650ecd45e4af395faec2141d57b98af8fc1e5151
        - 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-dispatcher-rhel8@sha256:3d7801f7ffe6420595779673a170235921a9090333f8ca51d5b7f664e19c82b2
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:3b7449287adf98f0cf0a1dc74e03b69218be3bcf5538327bc34ef776cc1c69c4
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:3aab995872336e6ccb590ef6488c097cff38a91348055031145427a00aa6b732
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:de0634d14962bdb8701a8c29e80b7b70684824462bc5203e5fa7f139839cb73b
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ad399867cbb712111db6affaf5c9e3573699ed0eb0def8ce6057de02054ced4f
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:56e48afb1dcbf4e266ace944105f3c45042550d8d4a0528c982225a793d26d56
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:a59ba5aeb8e66db3d8ba9074b8e553603c59e6b0e35b57b82c4ce3de589b94cc
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:557e73127326be051aa6257e7daeb9721e2af04d2f06cc26cfc7a1073666b989
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:594c3ac24bf59802e2d3fa127e4051277bc07b6444f934f535fddeb668ccc144
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:16b39335e97bcc7c970a8ba385c61d8333e9912faaee813ccf8520d434b7bb7a
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c12c471902b8e2596588d9e553ad59b501d979dd04f301d45f7d45e794737a8c
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:f37f494956adf0892ffca34d2a4c9b839ce28dc9f2779ca32e8801fb4f0e9105
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:b780634fffe2257eb845f8c1d25498d9c654d0327c1f8841b40d90c176a2bfe0
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:4408d1fcf34c0ffe9327d4c9c0bc772afa969d831bc5de1097164d10b4e8d900
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:fd86ea2a34de43014dea3ba2b8d705a3d94347d3a24a370a8bfd032ed239dc56
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:04866e16881f64ff2b5edd379eab0731c9d66a47c25ebfe79c8d8ad33d8116e6
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c2cb80bce34a74afa76151d2b44dc25ece73fb274cdfc6fdf243b1b0cb7d989f
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:0229a0a4f026f04f8fa0a1cd8e7afea10117fe3f12e21986ec6089769c8afcaf
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:8273842d8e1714fa03c7e0809924b1ffc5ef282f79b9606bd8ac88c03e7a16bd
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:c4cff5ad5b0ac79e71a16b88640a312ab320817041317f50caf575f7e12a864e
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:397eb425f383c1273c7976bea69a603530676a00a61f461ceb5f48d67901c4cd
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:6342358e6aed2339333ebf37fc223a41a0a3e199a0e4a840f3f66e5accf8f233
        - 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-service-mesh/proxyv2-rhel8@sha256:a10e76aa15707e708f82c8d9e8b5179bf67780d99f3c3e2e99b84ae2a0aa4ecb
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:216f58dc8c8166c0c69fc0312b667daad14cf39b7aeb7bc0fe1e313376f1a5fd
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:ab90ec9b3cd9203fdcdd7c43abf95f48c9d7479a9c7af479eb1e4b6599ba9642
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:e5db11a0adb889f907cad797dad9cf2de09c433e5522fa333193cb35575802d8
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:aea5f200a845e1d4dc718d76465fdbb1eeac2b20ecae224d5d20a98214ad0357
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:10788ca67809e5a2d76d6d72df7dd64ea4407773999707a7681e0cf1b5c4695f
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:a3c5d5fd8014c432830be912aedebbc58f9c60a8cabd87ae6c42c7b8d27db8f9
        - 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-tech-preview/eventing-istio-controller-rhel8@sha256:b6ef281fca2b80d379b1e28fe3f23119df8ff765fb2cca291d514053fb512da6
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:06e9e073f092dce67d4227e282fd8eea6dc9f38b90a8d444cf448d80d027b616
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:a5154f9d13a1c373b8ba47e2bcfb9d4474fd03e08db4134c92aa4f049536f1a8
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:01c8fee92889a84a19136b0843e4fed5db31c1f2a6d997669f103373fd995e36
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:96c135ced2e3bff434addb012368d96d0778ef1d294ba507ae7e624811e20d46
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:6057a2d18406e00b0b7b1731870f707844e39193d4cce6de50137b77f17d220b
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:cd1abeb2067afa44a0f1eca301cce37307582d56c1147820ff86b9b64a40588b
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:2d3e314a6584fc6974517c1a992fb59f5133f54c2f6cfaa42f579c0d332e0300
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d03f2bf8f5e7cba47102ba26ea0149ae6719076c645d5e451058392d6044b738
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:e8c756b659f6187790bc1a5115e0f71791bff96630859a905bc5b75d14596e0e
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:1455606c8edf611d996a48e29ead53e0bb4078f55384b7689058bb25fc59fb2c
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:9a28cb1d4c4f4dd7d494829eeeb7122db2174a27747f915244672c95dc8f9d12
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:12bc62246142a605f4efed0f6bb8843aa2df7699cc1c5ab53debb94b0682e9d1
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:85a369d5696771d0932b61760336e52ae3f7c66f9a3def5312aefcac03ba516e
        - 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-receiver-rhel8@sha256:96d6f52711ba433ab2f273be8080840a88e626e989027480424d19c2fe1e9454
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ef116868c9c60e5ee246060688da49832571ff6a7901cfe143a42d048743736e
        - registry.redhat.io/ubi8/python-39@sha256:0ff58549041d32b685cc850aaa85da32d1ef73f99cd4b6e0f6882dad5f0399bf
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:92a39ca90984cebb1938447a31c9170b52994ae98f83caa860acdb2c3ebb75c7
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:124087e6402caa375b24b976c3b9fd7d53890e20ac3b0b57ba3ac646e352c7ce
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:16939b802f4c16a3d9d941917d0363325f40cdef28f6e1a982bc95401117674c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c9353a022e6f883b7c0b2d87b1bc4653172feb13806ebf0aa075d6f9f43c264e
        - 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-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:a0c5a91348ec71697747113990652feb024143fbbd0cdd67e8ae672730383a79
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:e9505aba7c44cffc3f261a5dc7617a0e54ed98e78f73ea3c9c7a508560b792ed
        - registry.redhat.io/ubi8/openjdk-17@sha256:af305e087061cbaa4107ce0b304a1ef987f6b54bae3f75bfd529cfd084cba9b5
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:4800c85e8de031bf77f6fae0e4c8e6c1a9912ccdfb77799cc2ea574c37d870ac
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:51ac9aced282f62c8fb2d3696da3696b8496d8f877e9846fe3a4a743ccd63bea
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:69ea22c646c09208ca68345d4b3508453d8c49f7f7fd9a4ff4c4cb78be7bff43
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c933641efc6bf919b1945be5a01dfb7774ae865975b1bb1f44653b3e4ca9f1f
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:66149df8549380673c24e1487d0c2c8eb638b7e502455671ca64ed6f32ff82c3
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3fb6e7626d2b0c92c2a2fef35e9b8171382b4bdf54393f2ab1281ae7ab441761
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:e97eb2bb7eb529cbfe67c14e823ffa1269d614e2d35723896e89efa12a499c6a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:53d3620bb0490d83aaf6a356bb7d3b9e7147222d1a2017f8317f05fa90cd3de9
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:3508434d5ab6b38c8a7466256f1158ebcd75e8b751afcc5255da8c21566804f0
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:21a638b481639c3c58e8b026d875917c30a5874b08fa4ceac40d447076b2bfa4
        - registry.redhat.io/ubi8/nodejs-16@sha256:8abeddc6ccfffbe313f87e5e069e18cb7047f2c7880ad63cf15bcd0a79ba71ff
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:3c8bf480dbb05e09e8d07cab12e4736643f61bf9b5d98efa6bc0557eb31887bc
        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/openshift-serverless-1/serverless-rhel8-operator@sha256:3a4e7412322755b4c278540c965a403f9e178f138bd4ad7929c1c24a8036dd14
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3b01ebdb0704dc6a1a993ac076819489495ab3fe32e3c14609e42d1358856be2
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:433821e6c7f43da5ca2e38c0550722feb179a0bab021decd9a97ad020cb78b76
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:0a2989f688b966277652957b312df736ada43fff78fd89b17f60b2137e38f115
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:9e120ecdbea54eecbc5e0412c1774f8a2ee70d7fca682ecd0757b8627f70680b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:2572d98363cca2dd94984d6cefa573c5054fc206ee70048f901ad4b846d8dd52
        - 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-serverless-1/eventing-mtchannel-broker-rhel8@sha256:9221a833ecc66fe2354aee7aaec2a2470b21e2d89cb6ed287ece32edab2a2edb
        - registry.redhat.io/ubi8/nodejs-16@sha256:f90b28179d1d5de68d42ef1a9166d70a9dfea85a1c6a4bf12dce2c59eeb2fbb1
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:cda04e3b7c2c1f37164733ad162ea0c4e52f14fdc8eb8bdef8507f0ed5454640
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:22ffe08d6a0d5461158613f2b2a2ac6936025357e282a09197a750c42b5e6922
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b37dd2cf4b459fecb6d681cac36918e486c3bd22501df50b90e20b15fe164d56
        - registry.redhat.io/ubi8/python-39@sha256:4f35cbcc6f4e108c69f7d2b70cce5afb138741b0c961506376d524e001b922f4
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:ef7d28580e75d746449a90cc0e5343ef3f4ddd75bd9fb866d97836bfbc3b314d
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:d8bdd96c6a9b31f48c961ca438c254511db785fd34bd10b98084b702baf0ebab
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c078071cd51c7fd5584039b54a2004331c05a897ee8b0689bfcb9204a8ebae80
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:3181ad775ead55f317f96466c2719b2b73c5b35d31933733da21273955d160c4
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:d2a34100f6309c3cbac7c9ccd452b7bdab2a533afc99463bfbf91e3ba2706d54
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:1ee675125f7141e91f4ee57ebce082967834bbdabe1a870c221f31aeb8750be4
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:80361e052d366ffffe9a99893cd83965bd69a9ff81d8c9262976de145bbc6184
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:3dab790fa845ed7eda088e5abdc87799da1354884a53ff1ff728739b8e278418
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:63e08279d2852d494d4f8836c54e2ce942a342f452a23ef437df9640bb2f5bc9
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:7941b421b3e18bda8c565305241621fcdf1212cbbe0dc02f38f4ab0565d2bfcb
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:486bf60d17a5d265ebd65d590a6ee1a7e13bf3953ea797b2f6c2b5910789858f
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:887480662b1bfe09626fbca8ec7c5da879d097c46dca11764ea98474ec78ab5d
        - 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-service-mesh/proxyv2-rhel8@sha256:bf693eaa845373e1a06041626a9314ec00519a6fd2437b12f7f4f3f104864039
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:df1aee67a161fa19d7f49ba56d53e0682cc1996436e985a12a2068fa419b54ea
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:de62762efa0df95ed23df56f5520490d8a231e47ce13c433c512254ceff81844
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:a82288782b61ea46d068cc09ee10608d3201c136abfc767e4d37734775101390
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:1fcecc11b55007b9c6969a24940a391968378e4102eebf7ceabbe7efda138575
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:99f5dcb92a33c047f0b68236a3a42ffaec78037dd0a5eb79d1144d62d6bfcf43
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:af5c30fc9f631d9ed110641b815315d8b4aef539f687277a3821d9939ca5dd46
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:eacdad8db61b23634c3f89bffa3f1c30ac5c7bbb5e938c6208003ff00f9595f1
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:b2480154951109a159acfb88c5472a312a515d6a6b060d832b3f7bfc16f90ac5
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:e49220eaf3143a8958f0cb1f22115b2e834fb7177755433bdc592b753a54a8ec
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:5b38e5c71e422161e40f9c37dd2f46212cb80e8e37b00247767276b957080397
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:3be4fc173b489d0beb768739f60274e07d95ffee86d70a8423e1f59678c805ea
        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/eventing-apiserver-receive-adapter-rhel8@sha256:14ca32e999767776c3e585ff5eb1aa568f7d76fd3e5ae24cae05ce7564678080
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:e55c70591c0498b6b85f0d68e304e88b830ea0b35219ba8881143555757be4b7
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:e7e6cbb46720eeca3f0f4b9829dfeeb3db373a83c89cd808b667ded4d5e139a4
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:0729de0f3f03ed220216c6cb718fc34beece0ceacd926b5e2480bdfcf44df5cd
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:2f0f84767f7d76dbbf4387ca2e272766267a2c46b5bc29f5d01f05dfa39cb944
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:9d36cde68bd822016e967148eebd2ef3e7ffab9dcdd37d17f33017e9b703d9b2
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:2a30ae808d5c32d812406ff4ac9b472e82b6bb0555e62eee4c2c6a972f8750c2
        - registry.redhat.io/ubi8/openjdk-21@sha256:bb95ea866269ac8652f666ee1587d71f4f43da33493c2be7f6a9548bcfd2407c
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:1befc9969edd2062b3df69f45aee9771b33a2659c3a14db0aaaf5c3df985af58
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1a1de677297525c0c5d317fe8a7a42684fe3f1b422a7d6bea1f70f0924653b08
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:828d31bf8a441091b8aed03da213a6b4ffae260070eff58c3319156f9bf04f5a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:4c9faea6fd162db3340aee8c11af11a08c9d79bbed104967c25df26c4933c8ae
        - registry.redhat.io/ubi8/openjdk-17@sha256:a166bd2fedb99cb62ebf4695ab46e19c7e451f887940cdf0b8245c81e403aea2
        - 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-kafka-broker-controller-rhel8@sha256:990962ad245a6d62cd11551bd4e1f8b14dc08abbebe47beddb2f4874f78d4f47
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:46b8dc1c8ea6c40401d4d1a9868ab3edbe8b9e92364a43add6722489e2eefa04
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3ffcf746df914f0949477b46f90cb2992bb63f8198d73ffd54208e7a777a9cb1
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:22b4d47725ed8cdd663ee26a03f31198fff9e71dc703532e70c42bdfb4840811
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:7c8cefd5823ad953f112b905c651f12a97491aafc008b2ba0111f0c9e83e50ae
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:3be20d63d7e82f35ac88274532d6ab7839f9a7306ca272e7d532ac03215faea9
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:9b6524f9c0e7f78e6ffb372a8587eaf5f4f1281eaf64f93dd00b63be84a4c21e
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:ab09a1710aa2331e24df9e7283f3909fdb104c1b314dea88e919d0a396f334d3
        - registry.redhat.io/ubi8/nodejs-16@sha256:69439fe83fa957089cb6fd3c1042ab71d719f81dd457a5d1fbc56c1e3ea600da
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:8033b7c1e903ba313134645c626eb3bf7ab1a0d68dc2575bc8e26884ad4f805f
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:0507ea8745267fdb53329a5274d59d23c387225d2594af51dd2603b4ad99db0f
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:b008da825ee2429f04cf39258389740c68056f82cf4bde0cbd3db850b6256885
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:25cbdf78b67e7f5a360313ccfbe3b6e2c98873b4e9ddee46c115a623e77c7abb
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:ab9a1b952e9603b4ecc5f197715a1d871abc25ebb0c5e6470d4f0b365ae94276
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:b0db9f0fc85fcdcd5da980633a3a44be2bbabae068f89d0965263de38789e812
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:70c26c7ac48d1eaaf1f95ca5c5b8ba8ee6b047a3c9c4a2c2db9c49a506bb2205
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:e70dd3a9e067075eb56e5f2772642545e308348cd49b89357c02de3979b1a5be
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:da5f813dea324ffe9679524ea7f3801536fa48f7dbbd8da56a8492b916b15fc3
        - registry.redhat.io/ubi8/python-39@sha256:8c96e8648cc6651d0cefbd20496a89f208621601f9664554d3fdeef8ced25453
        - registry.redhat.io/rhel8/buildah@sha256:55f5c7d88c77e1ab5a2ab8e877172b2b66cb196e21f10dc45148470d0ee8bbae
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:42f31eb8f12dd36541c8c0b6572d942c62e2064d5418428482d676d117a6c426
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:e1e2273fdf6384d95e1128e54c0794d7d620291a272bfb1f91e0c2723be7f1b7
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:4933b76d95d411d597d4dc460fc46c92875d28e107cda661946206a9d934b8b5
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:04e5b3882223d45a5f5383ce6481efb7b2cbedea57ebd894caafb1454ad8c09d
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:5930caa25ea875d29dff0ec5e235eaa13cb6dc98980d8045335eba1a09ae761d
        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-kafka-broker-post-install-rhel8@sha256:510e98837a549f489b2d74939f3b9c7ed90a8260ba914910f681d5c0dec7655c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:2bd241898bd54dcb248ae86470430042dc545d45e7519ed470a1a9c8c63bdc37
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:dd1f7c850f7cf2a4d70403deedd8a57ecc6e0ee5455d68fdfc49ff175fe42dde
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ccbda564735555785815f27f8f25ad9c6c27dabe4e262586fc51609331692527
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:359f8b9fbb4c3c2f79e8c70f3b50c994693b930f6f078c34c87112ebb93037e3
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:b2be693c71cfc4ce934d5b01efb863dc6e391f93a6b15fe7eeb15914063a8294
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:42d16e4d9f14a427e7a5b7e3a4ea07c258e0f2c74984baeee3b4926a8c5e2640
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b12272e1a9cb4f4bb62c4badc62b0bab110abb99484612dc781c46bfeac13cc0
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:6dbfa2573a2c78e450d3c1c04c6e7cbc50d9272233e828fe9b42e575ecf386c0
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:c3dee2598088bda36ef474f4748943a29169ed9589aeb0f77bc79a7f6bef9907
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:a0399a993155e755409355740b260d9b0019559a62be3b6253d8693a4fb59286
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:09060de091d617bd4606f7a289b4528265ae0b7a04737f383e79efd5b0d3eb79
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:e9b38f1df225238836aa829f3a2016372859fb8709cdd2b30496498669a90be1
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:28c9d05a3ba73b76f293e8f4902b574deb44f77a2bae8cf92473b8a8b10cee92
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:62bf4bee0ea17ecc60366ecc71431adc79d6f0a5b9f59489913b474128c4adb0
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c7f29554d04eb9348932953344f2ea0806d14e7704355619381bf395d993f58
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:eab4aa93b9d175045b1f01bff09681107d839285e0d633cd5146d2a2efab373c
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:9b850afa750a67120f68a49f4834ba7f105563df22cbcbc563317fe1545640d1
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:93b2f5211e79abc38bf92f0b8fb8adf046303efa2fe62c47a2fef9dfb5662f55
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:ea9e4de6228d5c3ed494c2ce5317ec290543ad40bcf7c43c2a3d6565e5d94e5d
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:f938cc534fc4b24bb9449f1e1e1e904dc588e6646c98474de4b8c81d083b4d96
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:d8ae7bc888f11121fbbba65074389b879bc22453bbabc551d79d0cee68fc33a3
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:879fca768b46676f1df89de1cdc4ded8dac310209c146c2f381ed1deb19b06be
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:05e3dd6255294b691783523f7722cfaf13aca1a1e1dab344a25eeea72aaf9f9e
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:56c6ac59a68976741d2ba676a53e59fc494d04dc44b513d72fdf8a9ad894a54d
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:672022b6f2a080483d9d6f6f4a5f42e52e522a5797105f3465731809c6cf4947
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:993597ff83a4d62a23f642fadc92f182944b953770716b73b7d19492b5a462c3
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ace72435e3e63ab21dff2345f958cf6bd171537ef2846c5d5d91cf821877140d
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:28ae309e4cf7feabaf78ac6067e1173f9f5b33a71c06d6c27cf25e01a0b1ed64
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:a8821b59d495e24598b27c6510b32ef19de2bb04ea1e568fc5afb9135d772036
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:9b94875e0e5d7abdb3b9ba7b04e217a2a9b7b4410d38d1608c86d1c21f929cc1
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:b871bd08b782c9168e9a54340efffc0b0effadde8079915b848e4eff72bb3e95
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - 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
        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-in-memory-channel-dispatcher-rhel8@sha256:b801ed7b1cb32d4a1522a959e97f280f2eff6fc92e47fea2ea022f180d37831a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:d8b94bbce98325fe8079c11c0b7a6c59bad8a7edd0532a7d27ef1632ff0de708
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:09dd94090eea9cac7a1935a6d671cb97fd9fd5714c715c9d2aed461e468ca54a
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:4b6f161c14c68536ec2c7679d30681afa9a1fa2d512548f0f591791a10a8b894
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:1c82d20ccf5eb5f8e7725839f1060f4efdfd1c1b4773a99bd905e690a6e36f38
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:095629572a40469eb651c9f81d6c10ff46254eff8b9813cadce54d6f0075c2fb
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:a9e8583c19ca3e01593f8c0e54731cb73df9b46b2ed47a2b1c711828c2295f82
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:633ea30ea3b6d5152bbdb61acb4271e5905d50fbe3c731fb4c8d8640a57f1970
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:76480201188dd142206040af845bd55b44155af92e0c5ee9bcdb8660bea0cdb8
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:0f126893074cd0398654c4018df6e882b7610e148c82a41ac814f4bf3830bf9d
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:30cb41f09067959cfe3792e070fca62820fcca4035683e5c43dd46d1cce97c01
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:f94f0e8d21a6b6341b1db00513a1a2ed5cd84fcd898a376ecde942e940a518e7
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:b9d85323e110d8eb6600223c38f9d4cbe89b50d59e03bf1e6b8808f7cef9a3a5
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:6d042c614431aa9a9e77cf8ba0064423e903f7c418e367ecc23bc02a24a796c0
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:b07010595201d7cfe0ec4f18e612d323eb38464c74eb187f275617a744d9df12
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1252960c0c0a4dc7b39090cde0fd5742a19453b1a65a08b737bc41d044a0882a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:2adb0124f04d6c4a552ade79dd1499c8ca997edb45855bf438ca8043b2709e19
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:86ffb8be1762782d643c147cefcfbc2b4723b0f97d017314a99bd2275d05a1cf
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:d40daf67b36387faa9f55e70e50d10d02accfd19470c0ac11b78bf969947fed1
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:0f8d006d0e7468783739942a1c82c7aec376c9948f23841132c8ddece8ecba06
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:d5ad3c9db7ce8e4fc950261f7c388476214a03d92e0043c7bbc4f0add2b1e69e
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:e520d1b6b87f85dfffab5e53cfb70562ab7edf450061c07609da39e3b2498fdd
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:946daeff59b41a6f8c4842f8c2668f97ff1b49e2a8afae5d64ba3baa916b1d95
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:144883b09d8a999fd4d2a109d074e44d7d8b959987512379aa71c71e4060ca28
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3d17f12cc9da578549254ba1b8934b5afc66e453b1d5d667bb90281e45b8795c
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:a5950f81cbc64d1edb64ae7f7f120c3435d36afcd14ffc34ae522af297d87e1e
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:84994eabeb7342a0771c7cb1bdd70e7ee3928dd45874eafa64cde5bb385fe964
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:45bc50a993d04b775a153e985a43d587d5455883fc4c6f31b772408297cf9040
        - 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/eventing-mtchannel-broker-rhel8@sha256:586fc8ed88f91298dbff31bc2fc4c63e0d6d9356e3358b2f853f49511c3ff9bf
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:512c4d93dc13cc53d923a6990770a7527d6fb657278e2c5d8f0ece3cd5020155
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c0376504edae12e7af6b6cce02ac53b6b374f5058ebefcbdbd32628b551bb0c4
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ef7f34a025e40f93fbd51f3a4596998a6dc508db824f137ffa1fbaf90e88f4a8
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:75228e70fb1383bbdbcc64d0cf24bf5d977c09112e3f32316824188264c3a2bc
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:33d62d13e16f47db9951ac826671f39fdc048fe7c3fb019eeb4bf9bd0f814222
        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-eventing-channel-controller-rhel8@sha256:e743dd93b7ae855825716403979db3f34cd300caad130e7d3011172b1aa4eaf7
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:477b1ac0db0abf1e16ae31bb22fdb73dd98f4dbd243fa0a7e6e94852b16a813c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:cb2ebe98481808e788ca70e7f0a9b3402818b622158f327b99a1e87c23226d2d
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:0e58edf5ee340fdfb282faeb6c9bee8cd6323e7f29a9b282dbb91c2622131a9c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:e7aa54986c3d388c1bb00828c9ccb294ca0b6c26376c7593ed6bfddda0ef4e5d
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:3130a5159adb9b4eaab75a0209d2ac639156d5e9f2346a8b2e6e0e22fad4b45f
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:d0650e4d7e72241e07a3796f20931adba231fbf5e401a45d794761f2c5afae48
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:818dc7bd69b453ba5882b4ccb82841f2d48c7552368417bac20bef1df64f52ff
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:0751b9ea7ca197480c4cbca17654d0653d1c0c760ca3c818c2a1018dc952cdc8
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:da8d975527ba100313b92e87d6d2690fddae9988aa8d82d728221295955b7224
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:6f4fa254d923f3260ab0f7d6a0b459554f83b1abfcb575a5ce2c0135fba32427
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:91456907c61952017daf07e376b565472ef86d67a2925f60e189c639ceb68595
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:8a4e5e0934197c32e0dfa1efc922d750940587fb61e0df49d476a2d035c53413
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:b2de6b658a1595084a202203c90704c3f9de018a7a904ca276112ad606e374f1
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:86386b54cc10743023884193b7d6c7159b90052bc5e4a0608a6cdfd47865c966
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:dfcd11686f161d44786a205d12f9d628d9e847d40ffdb628ec9aa4a0da0b86f0
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:f56d21089566330ecbd9aa8acf14da332d3db7360aaf6da00c9a19df83f7334c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:732827652b7a7a49181e86d561831001c28b72b7e12d5e3c1d71b2e496003229
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:020264063c50f2a4590f3d7524b271f0f77350a1f8fa3c35ca6e28f0162aa9a5
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:b66bb9531f05cd46360f787955c849208496e3e45541cb50b23bfb6b68570aa8
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:2cbe84afebac23b5397d144b4d5660af33290df451141fa3625607b6033983e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:ffaad2214fa897e89e92e574eb5cd1c671edab7f6eab87cf2ffd4ebf162b3cf4
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:b5db9a51bbb46640b23712c61e9c5a1c7bbdbcd9a53b0b92fa36b80dcaffffc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:4ca1bfaf2d7e9477583cddfa40f0b2ce59c20ff9ab20022038774dc3cc49662b
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:ab8f85bb18311b0bfee00561ef6b5d9faf810358c954ac2c6f39cf2a7739e07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:6b842b4eddfc71a2c8f6c1fcebb8f23a05f50c95be1ba2d20a1be660d3014c8e
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:86074674b7926ad9bfc95556e50820792fcbc5e11ab02879378625ffabdd1889
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:6722aecbbbefa80dfaf93143e033c562cea0982514e2eea27654dd4638e1d072
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:018459cbba2e3169bc4be6564cf3747c9cd0677445912abf237f8fe6d58e46ac
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:d68fae6fc07efa9da9af0532aadb49f897a15afcdf9a98dc7517ff5e17735454
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:9b176477be4c782ce60d81a72bacb566069a499579ce6df5a987a0841f05ad5c
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:80a155d2637f47e249fd69760b250c9b7a1eeb6781de9308b54162bb3e1bce71
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:acb28d84cf03b8551efa32646864005dc3bc9bb341a696544892dfd0c87fbda6
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:56e7a0158a713c70765ead847732db4e5f8439aacf31e9a4a22672b583028064
        - 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/serverless-kn-operator-rhel8@sha256:ab0342b325ee67cc2a7d321aa1eda9c6797dc91fe2b6f26e3cbab53fadf564c7
        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-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:e3ae1cc6012f19631c012a07b113fb015977d2ee4f9faab3207fbc2464c25aa7
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:074ebfc4494581611647ba90049655a470ca43743610a27be77db66a8633bac6
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:78fee4c596f2848487ca704da3fa1074e3c9c99b3f96f66833aeba63836d7b93
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:3b04e9d8cd4b5e43a07ece838d10478723a6c6529350f010550b4a0d1d0950d1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel8@sha256:a903480159ebf1d8652eeaa702d9885fb76bb106c02d75cec5c82c31d77d6410
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:ed60e889a677fb139f2eb4bd9ab4fda6ecc39fd050ca2b6cc1c19717e428535a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:a1834b620f875681388f0ae224dd0771773a8b61b1d8e5214a942f232854b87b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:ee6533b71cf280877c9d7489dfd821c9209c6802bed7fa3fdb4f8f00fbeacb09
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel8@sha256:27e74287774cda208f667bc2a386debe6b6255e8991abfb37c959c8525f2af53
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:d6f338e08fa937c8a4ccfec692424de4acded565f7ca3971ea507dffeb351503
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ed89e221d7a0a1dd82f2fa75e9e70bff3dddcb8979594396590bd3a15673a152
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:6210a946f373b9c36c9b31293debe6fed090008b8234c0ba17d37fa81646172e
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:f4d86b196457cdeebdc380b6f1b707c10f8dee789c7779c90ee1332e511af8c4
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:9b328fff0cc8545fb9bb1f24f11d78cfac3ee76dedc11fa4def4262d79a60e8c
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:a6f565d73375e827d830dca85838f4c4cb7f08b0c078acb0c0d567b25f0d256a
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:596a7272d6de714d7dbc6e00e9e50a2872846c269547465252d953172ef0b009
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:4344716eb2940c6a3fa9a278250f936602bb1549fece6037912837719c178b24
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:bf82b37ab8fd29c7a7cd846008a16d14b4cfdc1c09df4f731d71be3957e90123
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:187fb9d64b53c55a029ffce3c0f9e7c3304683fa8a0e832cfb7134e8a3d0c237
        - 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-client-cli-artifacts-rhel8@sha256:3fe326ad9a00b112fc888ffd345c8d5042f0a22cf32ea575931192c39ce1fece
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:4aeb68a22f63300e54391ec6b4cda8c4e665d904b5dcdd3c40155040525742a0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:631eb3a8dd9d83ceafa7d8a4da4b1e2d4f2740e6017c766828dcc7575cf1322f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:429d5d9568cca31fbe83c663276a300286af4cdbf3d35685afdbe5f6f2f8c6e0
        - 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-ekb-webhook-kafka-rhel8@sha256:3d780ad1ab280b5092b90e277485d589da2a18e8b08090af7d95aecd17af545d
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:dcfe5fbc57b9f8520adbff368c8bf29eb491c9c26d1a1737a1722cffea83eb1b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:f2d112ba9fdfccea988589b99b463c8a7157475f7a3f03678e8999e65b678cc3
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:4274004b6289fa9bea3fa6e56d64077a328a6b5e63a9f0e9c41f6d561f682bd7
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:77e4689b2ce7a713e905553e0e42b8e128045f40cb6c6d4ee082f126cbc46b00
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:0c2cdf917bbad1f5bca8a2a2ef12a96cfcd0c77c190cc35687eb57169b54ab6f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel8@sha256:afa634e029bcf79a972f49372498d44b45bcfbdb6eb28ecaf4f0b0b2a0a1824b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:c39cb88afaddc295d93a3774b8a20d001b82392df540fb502ee02316d82460a9
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:5352e4eb4e426a41521276decadf204b6d23b4762a298e4d3dc73969e3eddc68
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel8@sha256:30b8045ef5f925a36c58941386f1899bec125d005a08aeeeba5edd49b0859149
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel8@sha256:8fed5ef9a1f39a55077bb5026c8854d0ee7fc8d8ff5da277ce9c1bfc2ab2474b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel8@sha256:d9b944e64391a996104afbe8a21f66316a948e9fb7b91734e861847285be59c7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel8@sha256:51b5e18e8d4c1ca81d7c5ddfea6352a3887f757acfcc53bd2f8bd3b01337ed42
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:01d632b69b4a4112426afc4184c72eae6d8816974088e5980c9c808f0782b85c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:52ba6b1252b6f3d41e2a0b3b880cb768010ab9dd925ac34596f6adaedcbbe07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel8@sha256:3af4c48030263eb5769e5f36a6dd13fd390d8566efaab37532f39e1df1c95c67
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:82e69a1890042f5636ac7bb645b1aaeaba0a4894851eccc1fa1c63296918e31a
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:f3d87a7fa5b5f2818effcac3304bd56eddcdb0db97a18ac0f35a06fc7e223e7d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:c7c2e738e0d9da1d2d1993f68938e72c4709b1f28a54fa92224ef6a0e456b0aa
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel8@sha256:88323da16360981f27b8e4686fbbb64053e4e0e3c79c65d695edb317b334e1e0
        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-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - 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-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - 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/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - 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/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - 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.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - 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-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        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:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:dd84cb2dfdecd4f5a3fc50a9e167ea6970d1d52d8c7427c201a74a76e151d430
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b3f83d5f406fd902bd9c6773f14c07649474edc4ca40bbcf75142b316a094247
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:81a004dc9d33eec151ae38f2767fe264a590710d2c3a60e934d440587f9980c4
        - registry.redhat.io/amq7/amq-broker-rhel9-operator@sha256:6fb2c32028429d50b8ffb26b63b6f9b055c9c3fedb479dde6f7d8dab9465922b
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:7a9c3e61345a8ab7c6f91701babca4a566beeb959bdd6008ea9b75df79a3b532
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:ff80e0a7accda6825bf834d9aec27f48205dd6329991890dd017b4d21d0da5c8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:80bca92852d08a7657fb090fe44bfda10baf231c31139a24edec83f542f36232
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:54004a7076fff8787f14e238a7c2dd21884a882097fb474412d96b0138ca9249
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:755d0f7421efba76f52818bb3a8667cd7d2dcff2c7054dac1a4637b74ecac51d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel9-operator-bundle@sha256:7d3c6e3137aae3a0f612731fb8e2d44fa6c7f708fea2b6382ffee0a4d1f15b3e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:c8ccf2fb03e97fcedc3299ada2f63f47beaa7643df4b201fcb30899f923436b9
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:f92b41ededb92e88d439caf1fbeb9322354da4b7a298bb4ae6873871a1e3fcad
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        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-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
    - 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-operator-bundle@sha256:1696b6f86abea123341f703981c26d79365c8a0c046d7add6970fb7b1848ace2
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:8c5c8c530c63bf9eaf4909b9e6b7d234a0ff266f31030b60869c4af1b2167b73
        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-rhel9@sha256:293e3169bad9ed1739b0750d13a7e4572594c2f5eb2eca6cea04b588ed06029e
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:905406a14759d960b41f56dbb30170961fafc7b59421efb6c2bba5c6f91a9f39
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
        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-web-executor-container-rhel8@sha256:2f0622774367f33efc321926196681322ab1535144e6a0785608c8050fc59f2e
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/mtr/mtr-operator-bundle@sha256:190a6fa2a6a9b6b182cdf9cab18814d05c203b54ca18dc533e553fa5dcca779e
        - registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
        - registry.redhat.io/mtr/mtr-web-container-rhel8@sha256:cb88a5453b506ca70563537ec6db2f44ff8cb4050c9652ec86eb5128aa313003
        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/odf-cosi-sidecar-rhel9@sha256:f6f1d8f6d783c81b932280cb8d4923ba4b84aefa748d26351d6392c8673d10ee
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:74e59db870df08fcc30a6869451af3a6f5112777ef25bd7de887984ce015bc5c
        - 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
        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/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
        - 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
        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/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        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/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        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-operator-bundle@sha256:006edc597eec839f960bfd191b75217fc8c6bfaea9d1694e7ac9fa34266f9b4f
        - registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:767682dd3bd65651a8204c9fb732b9c48b99127189992b43abc6ecce027f4589
        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/virt-exportproxy-rhel9@sha256:6c5f2307fee82aa4c09be8250d52f2b5afdcddea6558879f161df0e184df9146
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:d3036a5f83bd488ac4d641c17cbad9f7621943edc2dd86be5b0b6119019c9d52
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:34df9b10d96231666cb0bff52ffe2a2a07c38b73e20472bcd005f5961ae3b7a6
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:56f2401c00e5b6f4ff7262725ddce0b4cd431a3eb7e393385b6b9db8e3506b91
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:2979769ff3b5d494633f221190a9520503a1526dfcdaf930f0d7526e370ea473
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:357057fb344983d0cc0b29ccbc8be12deaa3ca506023064988cfccb41557a645
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:d1d96c13e31b52fd4d0cfa6c463752b496d4561ca1d073ca7d05095221922d60
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:3cbace21d5a03b007e4fadebbb584d7c5daff150fb974707b2d8d7a2caa33159
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:829714c6d8ae2160e3b3e4e4680e637d3c5abaad985ad6a166a80cef9605c75e
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:e4aece12cd6900642c54597bb774baa476c0d3c09b8f94cd6cb8f30d21204010
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:c4a38bcc6094b76a0f082d20e5dff3f2912da442930804c4c42c3018aff2709c
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:e5fbde9eca277212206e4e1b619ea1809e7e6506dd6ea86b6d34a75f128060fa
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:600ca5470697e6dc1d8dd51b905943773b8bb602d8f167dbbfe4328168853514
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:d198956224d3333bae0b872616faa2affd98947e19ff4da78e3ec28cd632119e
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:abfa2a92650be61f1785643bcd051dfc26c186974430e2c7aaf722665a057e93
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:8d45195acdeb8aa507ce9d6a89de4197f2564f9f1daae19fbd771090586d2ad3
        - 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/virt-cdi-uploadproxy-rhel9@sha256:26b86907ad25fe1bddfc69c1227e403879fffd1495c52c9d833ac2ae44ebcb75
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:230ccf9d52838aef4c236d51aef22f71ce0c548f56b384a7361921492c68abdc
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:943018739e3db1763c3184b460dbc409e058abbac76d57b9927faad317be85e4
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:c2b07b95fd47a5d968e809303d9ab79286dcde62bf173adc5717586ec182c0fa
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:28106cbd0375054cf0d06f3fd55d3add39fc26dde9a35a22cb6a95cd0fe59003
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:7d9eb580f06b9077c45bb6a42287882e0ead5b4eead67e05a77f0d3345b5256f
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:04096d91f02fae6188a085e456227a0bb52e52f07f966bfc883c63e7f50d6870
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:376d3b416da5afaab1b525d9cbc508ed10e1d9adcd29d0d05e2b51ccefc5ef73
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:6db561d095d29d656abba9713392fd94cdf031e7ecaf1c9df5b8460c45730df8
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:62b720486b6e60adb9aa86b83117d48197abdcd8e3aef972ec2213b3fbec98b0
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:8fde93d45a81ecdee95649a281f80a9b2a0a71952771a43f0555cb97ef7d1605
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:74180dbda759a0f30b9c9321585ced206afea318ddbcbb362bbb61f1b6978597
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:edeb0af7736a94afa9ada1ba7be1254264754a0df41e761f6d53463b5f07fcf5
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:8e6a791528a0b8809d38ce153e80e9e1f19c58a2415777e617631ea7876d2b7a
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:c451d67a6a1154c3f31dee5aa573b87484becc3527ed36a1c553a1013184fcf9
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:9997909581c8cd9150f4581a3aec964691dbbfd3b92a06679b0e795830599052
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:d6c330e2a2b56fa9e75f57c3f75e95096862b6c8ca31069de8f41f64e8481e26
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:c2f128f9001c0c67619386e1a860663cfa8b6b1f790af1ef00670d76c686c4e5
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:ec6699bb6f648cd70065a3849c6bf3a57722d0f6fc87c1a8b582e18bb9e4ebce
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:53daad8fa0b71bf5e362ee44c50b0e70cd976b6b30d425d5e29088fb8163f8fc
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:3857e1d21bcb5fe82ef0d8efa8969b90e150c2659fd115b2e357b2c137b19a4c
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:cea5e74574f8d3ac40cf63b4084ad107d4efff5f5f6c87f1dd655109b5bb0c8a
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:ef3b5088f20b1e0b101f22d307876b87fa9ce0b3248b26e0e1d4e003cd89256b
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:6ea1f813aa546acc9887f809207a7fd2a5d913ae0f42d944d7923620a4fe877c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:dd0f81a803da2b2c520f922039045e2db9b96c61cea26d60eda9c7c9626bc449
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:45a57cc3913b84e841be83daabdc5f5985d55075c0d371af9daffca1152ac0ad
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:b44ea7853c23ab1320f68f8693defb47e89dba2f7301ad46f5e28d71f1fc99c9
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:1ec50edc886c4fcd04bdc9de3e9880e90824741f8d6ae384f69f579fa6ae2c50
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:96bd1b744a5e034cb3831c2c9c45b0ec65130f1ba124946f74633a2795f23fe8
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:8c16cfd74922b28b0adeafd422b7b2dc3896c35d7000c9d5e57be0f566058f78
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:a62635a6a458fb26f702fe77afb8976e23e37ee069bfd37f4c7029841ece8d63
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:34982a06432fbee263892b58d24409e3f2119f649abd510609c8fbc63f7c4953
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:167957fc864966c356d70a6c333b03404c8234e4ece8e8abc6169de86b409983
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:6611d88a0c69650f1c2c9b946ed6df976b3312226ecfac1800bdd4e187ac9629
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:cb3d2fee13d9a82ad852495da7d9a2cf1b003edd39bf1edc34096bbd9005d28b
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:9eb617c02a50e52ff412c97fe2ece275d9a682686bbb127a3a6ce51f6864d6b4
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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/cnv-containernetworking-plugins-rhel9@sha256:fbec311480fc899bada5159771ce6d33ff8adbdd2a2c53e1f08e2bca75b2abac
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:9a2691eafd72990f03f4600e0fac40e1572479493723387c159f66261a85eeab
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:2279ab798e8c18b13c87cbce75e6018a9b5be872666c9a19b4929837ca7784d2
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:65ef0b5b5f2be5c829f9d25a9ef5a0e54505051d40b6233df4353e7761bd2909
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:9f081d7b24658145adb4ba5ed494091be3968cb4c8305f2e197a49f6d61226a3
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:c91fc0b7b07743c58c449155d1fcc43844e0f1c909b058fd1126674978afe5f4
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:e38fa87ca295c7f750e207b5c29ea9e4c784e51a2e9a365719cd6e45d55642e6
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:fad86adf9d9e682e9aff8764c776d2650e78b0d7101fd6c2804a4c445a9daebd
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:95f0ee74ce70b75c23ffba8d400db7018bb5d8b002ffa20bc4326cadb1aa1434
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:dc021c2d95737add38dbe43a961e8ae2ae8245df3cbcf46727b3ad89d8e27af1
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:aa1d79d10ab0f88f472eace2961cc0b83963b13517f636b4db74f9636fbf993d
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:ad84fd70798dab76dd65da6a0e54d34d1b233f042df97b0c2894ce5cba641e03
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:2a4fa36bccbd1750c7ba21d8774592205558eefa10c4a59807d0d7fb255c4d7d
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:508963662b9172f0d5e3d16b91a3a359c45ce050bdb8e5d0ddb99fdc2b44b260
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:80355df8da40dd604f65b897b4987b64c1c7aca77811a4f013659e0e4abde531
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:6abf158997ac1207a2ae7d0589d830a14e5724905c98e84b32a3b41882211e04
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:3138ad3a4471ca69be37fbe50a96be4b89e120de0e2808067ca99ff576f16256
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:fb61c086221a580b2a084611d0163635eda53d584c390f8df52a730e22925922
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:665bd5625630898222a3ecf02244ce31f38f310c87f5f6529ab53ca22ecb5237
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:a1b60487bef71216a67daacfeaa357de08f94294be66187cb219d06645076616
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:ea07bb35db9c047015fb6292608d28572fed17b3d190bb2cb3127e63404be654
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:c370e913c758e0a896a1bf47ceec0a44ae3019232f33ea6994b90ed7f4567c65
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:3dcd47d947a86c87d35dcb26da02dda2b9478bcaafe9c809db76707508353570
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:84d3534ff8027475d41f6dee3c827640905b98dc5251c6a31abad5c7d4cdb2dc
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:22790edf1eea155cf40943609499deb577283bdee8d8cf3a5bde67c7806f152c
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:4cf3eca6e1f958a9b3c14cdb6be536a2b8f11491b475b23dbfee4eee8de8a60d
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:63f4d29d6724055bc857b9113c7ee2cc686f0a4c70dc0600b24b6a51d03b1ec4
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:8870efa7ee50541cdef7a9058cda0030e66e31eeee26209443de888aa472fd40
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - 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/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:18b1188326dc55855da1afe01659fa0ea06fc9f0d5c8a2154f2aedcf49a204dc
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:554c6882d9c1320274c17336f5efd80a615b5a6b97a4383f452813e080ccd9da
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:1fb533343f9eb45062f1817e8be3e46c315887fc24d146fce4d83b53fcdbd6c6
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:591720c7e2301931e160cf1280c6b55bba9de1fe6a38545de09e05be38c50fc1
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:899349fd7dde3ace0171661f61a34d0e794750f16f0e59003073239d109c4ac8
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:6644a1c779f055ced237d73fa5a92abb0b61119983d1dc966b5e5592e58839f0
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:89beb3c6acc06cf04d97ffa7f1791ab380f873b692e5e694b476558693590759
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:2bc541d27e9be750363c3706fd0692bdaa5b16b69efa842be7f16046fec2b8a0
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:7da428ce43d513b042b5f6b58e58b134937071df97f769d8e191ac178a34d5d9
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:1823a4c581900087411be32c46297e8224087ebad0c10adafb1e48fc9fb5af8f
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:14eb7f410c4e2fbd7416a3aedbfba5f45e401e3bd9d4f49b68bbb3bbc47ba59f
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:80192f34263a9a9a8ef9812f7b8dc37090ace003e257e74db58902f4a1299887
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:013b3f599fd23278b88ec362c9b89ca3df3f5820a9820bc6ceeeff76f1ec1a2a
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:9451fbcaaf9b486168195661f3b370a34656bbe856133644cec7364fb0f9327a
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:ae01e86a9f67be13e9072b9491b86c6fb1682f153dadaf86afdd8269c04e8e58
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:bf5236671c5f149cb69c58acc3204a3dbd5531022342b3ab4e70908c46ed75d6
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:2efdb15604ea5ee3b71dda28c796ed67651e7d3a2811739542f702c285e8873d
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:13475ebdb09e49a5f33cb255491226415752551adbf19f1f11555ade84832490
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:6473ce9becf07dac29d2bb597fb1c9088475f2ce3d71c635ac41b13ee6d620c5
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:93d4db5d1afac1364915dc2284c6f58a0d4e1f9cd8395d84177dee0568f8fae5
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:b648126d95b88bf7cd346dd2a112fb77e2686d899ea51fe1090a510bc2ec8f24
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:5bc8eba190a09b03141b866c50c7ee244631e2d7e9fd76c6fb3bdce933b20f9c
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:304b1845e9b7bf2b443b6c889e2e37e446908f02d70f9733e4206f9799e9e963
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:244f5df211adf0631afdd76786d98b2bc01bff8ac11d1d47d87e3022d999ec47
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:ed454addfc02bdde63bfa619f53d036128d107cc1cff3f595819521be1671e59
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:4d5457ce137f9984f3a8227be66b51df7ca24d2cee950c7a62fe07e4da8c957a
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:89a4a5077410687afaeceb73af8c43d6330661ceb34225c72a7a18785321a6e1
        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-rhel9@sha256:104e8a00fea252ffeb7fbef678be0b2f57c6e0cdde8dcae0134c2a4d681cb63b
        - registry.redhat.io/job-set/jobset-operator-bundle@sha256:1f8fd0e1c6636b04dcc7cf4cf27d33edd70c31db5b6c5fc305e415df8a5b10d5
        - registry.redhat.io/job-set/jobset-rhel9-operator@sha256:e5b874a603a2f6cb97b4312ea2b00275cc4304773bcd9fca0782f1335576cd0b
        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/openshift-serverless-1/logic-operator-bundle@sha256:5fff2717f7b08df2c90a2be7bfb36c27e13be188d23546497ed9ce266f1c03f4
        - registry.redhat.io/openshift-serverless-1/logic-rhel8-operator@sha256:8d3682448ebdac3aeabb2d23842b7e67a252b95f959c408af805037f9728fd3c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        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/cincinnati-operator-bundle@sha256:50e9c88ca31182c54f9c4bc6682642a5115fa280044e6c125f99626c69d999ad
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8-operator@sha256:759f4de107a5b429933c5e44046ffb4ed75c674aea75440513a6df8fa93a83a3
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8@sha256:a9468a662babb272917df92bc9c827535b4b37883edb440b6d2d7c32ffb2145e
        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/kubernetes-nmstate-operator-bundle@sha256:c6d75810e8565ff5ec92b0429eb2936a381b88d3ba33d918c0b0e39399958c0c
        - registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
        - 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
        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/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:4ba07c476202c61c9a2b59414afd6113a55c5c8d73cc4d56281943c81f73fe6b
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:3e5d34d689309eaa346b27ed9f0f517199d82eb9410d1bcc5e99dea367e9e242
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:012b24f6713f98358ac044a8b5936502af22370a032cb7fbf17edacbc5e165b7
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:7cf8ca0c015621c90d8fc62629ef8711571d5292e2d5ae12a0f541cdd9bd49b9
        - registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:d1e5461db8983a13f98259152dc3cfa2aa677c29f799104190e5cefa83cf97b5
        - registry.redhat.io/openshift4/ose-cli@sha256:310339cb93bca052f20d897f3fabdd608983e910af19ec18d1c1c67833ee3cb7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:3a901b54a9d35d38b5aca275df2160e3190a874e139fcb606b9969b38284b3dc
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:3fbef82d1c5da8da1606d1a2d5dcfd20000da574737eb32b772d4f0123b179cb
        - registry.redhat.io/rhpam-7/rhpam-operator-bundle@sha256:b18c746b4270819be88665dedae34c7635df44d492e989f433515dee0d992384
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:a3e44e81b1fe4bcbd3c1e1d7dcbd6c4fc24d9eb2458d503675d431b973b9d080
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:4edac282119898ab1395030eecaee584990064e88fc8e65fb999f19ea2ef3f8b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:dc24aa382e02c4ac058d4b824a21f0e90a6259d6d817d0341b2a41809b5daa78
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef9165b4497da980bd33c935a638179f7e1969dc227668b21cb79b94ecd10e51
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:a94739f0e52ae43bd73f3218482daf0199b6eda367a2e510ecb7b64fb7ba9942
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:228c6ab5b83e215a98f6eb76250feb2ae3096fd21398c44e5b2701257c9c3493
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:bd5c6586b4859dec23ad9530ee98bab33497ab251d544f863fc0af01cbd45101
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:32912270eba0f2464da88f315bde8bf1ef5bbded814db156811d7a415a458f86
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:4ee8b93e87cb8012b46324a35e3806c6f7a72d6b27292cf5180dcf0f5da6810f
        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/rhel8/redis-5@sha256:8d7e66927ce4b3050ca15ab4df4dbaeb593cb855e16fb0a6f5dde950e9db7db9
        - registry.redhat.io/quay/clair-rhel8@sha256:af5e2fd1543365b365b1a6cce00b86e44fe5e66cde6491e9b113324c21f629c8
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:0e6bef51caf479074925115fa11621c41bcada375cc1925d0511a73084b93543
        - 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
        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-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
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7fe408a1e428b2d0660cb578c1dcd4b961f838e37166fe7b21b2bed70d288594
        - registry.redhat.io/quay/quay-operator-bundle@sha256:722cf3c05eb5663a737cb1385b971b6d1f0c8b2595d5ac425f7b100c25e2fd26
        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-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:907dd22eb16925813711a70a3d0df30963a3d1d0c060ca9b4f071ec101f14b87
        - registry.redhat.io/quay/quay-operator-bundle@sha256:91ce9e64184afb90b00360c64f5ba37d30130ab0344b2439b93db15f2b35b74d
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/clair-rhel8@sha256:3967b2027cc8ee045da7c6a214c959f8651fb873bd60b81cd78f167e57ba95a5
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:56c4668b72768c2b7017215f547039b4783498efd89d17dc3fdc7d0444cc8ad9
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
        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/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:3746677ef1cb0ddd4f237ab598b14cf0bc76dcce080ffde127b5bba87ffe6693
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:11b8c9d64c42f0f0c7b2df491bba859d0410666a8ef1d2fd41eb77e4ad9d2dc8
        - 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
        - registry.redhat.io/rhel8/postgresql-13@sha256:35d86936c539007a78a89869a14b87b76788fe117df442a670f63936b978ed5b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
        - registry.redhat.io/quay/quay-rhel8@sha256:7230fa1d4970e877cb6de8716e99a9bd43302c0ff23b4501f2aa806a8d496d9b
        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/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:206d249da9c156fc7b76eacc40759b3accb82dce85aa2bb2bbd7a33af52ee104
        - 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-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-rhel8@sha256:1076d78eba4bef63cf45ab04c1dff52f0407ab9e16fb4729bee7c1ab642f59b7
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:b3a950f2c8a123b9bcba240db407608dab6a4fb00cb9fcc6e083e07144928390
        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/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/clair-rhel8@sha256:3af5c1b75dedb37fb8c7cc3500882f7145314d44735b0957dad7d588a0cbf825
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:92ffbfe625489fe0b00e32a144f76935a4c36d1835af42d9b45bc3904760b085
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:b3f7fa8d48a772171dfb9eb893bc8e51985147c7f44fb8b1351325dbbf59810a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3bda08789b2ba41154d080a5f013ee0e2406d60f8414e63be451a6439555cc1
        - registry.redhat.io/quay/quay-rhel8@sha256:f112ecb55942c8785c4aa20162b74bac904634a87bdc8b9755873ef19eccd6df
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        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-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-rhel8@sha256:33e984892650d315065313fcb5f8808e145aadec5a287219c7031d85b713235e
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:43ef8adddbf9b007b6e2396f53bd6a5475150d28c2f4254f031a0fe6c7de5826
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f16c0a135dd7380e2a489f963b38bd76a63a973f482d06ece8d3656aff223703
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:a12a0918f6dea114b0aae231d7119a4acfd0cd297074d895f4ecf190d2aec43a
        - registry.redhat.io/quay/clair-rhel8@sha256:e11e8a819d17bd14c67f093b5303b4958855e731f89ce67dcca70fcb7b77f45a
        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/clair-rhel8@sha256:861be31d30142bae125cd059bb716d79b28694e9c4336333c68adf4a3823b61d
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:873a3daf1dadf2438eb96e151072326c31ba34ed48cac041614b604413d5f8e7
        - registry.redhat.io/quay/quay-rhel8@sha256:aa8c9f7b6ce57441ca1fe9dbaaefaf2bb83fd44aa367647b663bb822bf890362
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:956f3110f944d880bc27bb6df9472d0804cd75f5dcf4ed11bcf721e9d1d4542b
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b499eebed32c0261db414e307f96f8aef9e743035544c80c048526e7ba4fbdc2
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        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/redis-6@sha256:686620b9acef6dfc3fc5e8221ca4d7a00c1fb102319352e7871fb9bc0ea127e3
        - registry.redhat.io/quay/quay-builder-rhel9@sha256:d3803200676de5a10f81539d3cb65e3d1cfad4fdfe7171284cab758bfc1bdd6a
        - registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
        - registry.redhat.io/quay/quay-rhel9@sha256:c855425208f7f33a550d216328965fdcb3abebc3ee28fc0854bf62c58ce07266
        - registry.redhat.io/quay/quay-operator-bundle@sha256:000771d05a6151960a085bce375f090d706c48328009000437dbc5a8711c9ac8
        - registry.redhat.io/rhel9/postgresql-13@sha256:5105fc7494c8e9886204951ea6eed0a04dcc638ea65a2e1c15df5ebf99aae356
        - registry.redhat.io/quay/clair-rhel9@sha256:b9a5096fef74999c34dfb721ca1b5e47623cfa21b48213f60a5b889894d4874e
        - registry.redhat.io/rhel8/postgresql-13@sha256:3e3e87ba0081e6f2d00b7a0f44f1b7fe6465c3c8176503c5f967237a949fd9d7
        - registry.redhat.io/rhel9/postgresql-15@sha256:90ec347a35ab8a5d530c8d09f5347b13cc71df04f3b994bfa8b1a409b1171d59
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:adc9eb1500491144a259fd95c14237be15fa92478523bf33769a708b301d66cb
        - registry.redhat.io/rhel8/postgresql-10@sha256:0b9dcbac4969cc755505ee152369f23ac891a0e4030e9e2519cae25e32416500
        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/clair-rhel8@sha256:cbafddd1eb50c1c0f9159ffafd86f44a8c0b976194903c96c6f144bfe62e749d
        - 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
        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/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
        - 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
        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-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
        - registry.redhat.io/quay/quay-operator-bundle@sha256:53fcddadaa31a5f7d74c38f0bbd0d80b4c09796a580ef8494f60ff82fb6fe6c1
        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/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/clair-rhel8@sha256:f4bb5da4f6ea525d620c94180548603e1686de8b85b9c92c0a8c59840a1f69da
        - registry.redhat.io/quay/quay-rhel8@sha256:f713bd016f375427a0a348e58639622cf21560c05d1b82653f2c47493fcba186
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:571d88c0dc93c9194a5242b02101b7d77871d2d9496307df7dcb9dac971ab444
        - registry.redhat.io/quay/quay-operator-bundle@sha256:3c1f25918b505ec71eaf93d2a0b963d209e36d847e7fc48469f9d40b534344ae
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:94f7e4f69cf8bad09b00ffb85bcf621f87df000e8a6077ba49fca88997a163fa
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        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-rhel9@sha256:4185a2d8f361b3bafbf677e35229c2b58245d3a52dae44d67b5990b62ceffb94
        - registry.redhat.io/cli-manager/cli-manager-operator-bundle@sha256:f84f5609ed0c329c810bb85d66f24e2be6b0ae421c9870048d6af6079f01abed
        - registry.redhat.io/cli-manager/cli-manager-rhel9-operator@sha256:e68b034798ebb1cfa7e17c055dbeec8c8aa46afa7d1291a7a2dbecbb691f71ba
        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/workload-availability/self-node-remediation-operator-bundle@sha256:3bf8ef27f9a7f50c7e9fa066cabe8927efc8a3a890783bd9b60156b4ef417a77
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
        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-operator-bundle@sha256:2f72205cf81cd26e0c4d7b159e72f567e84e69596aaff92bbf52bdfd2d7b9dd4
        - registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
        - registry.redhat.io/build-of-trustee/trustee-rhel9@sha256:da30d5c78cba2fa4b595487c500ffefededea4ff2f4e9ee4d8bdb7b13d8aba40
        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-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:29690144667b3753a7e76095e136d6fc42325270e7b9f22f97dfd411439e9f54
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:96b77663961daea3a336b97e34e9412281bfb2727854dc970a69edd029b9af85
        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-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:5170255ecd45b9bb7a70abec0f6eeb0518bbc2871de759e468dd61a80261c0ad
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:e44078fc6073a79168ed52922b370773b451d69bf335aeb91d26a1462df21a9b
        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-rhel9-operator@sha256:49726cb2702441305e8047b24054575170fb595cfe5ebf815cdbfdaa957b02f4
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:9a3f5b6c403fb84c9cb93c9d7cf902c80990196983607c8ca568d4b558938e17
        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-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:68fe21212c54efd1c7a1e6f68e554722ac7cb8ffc3f5d48d608ebcc0ac8be921
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:60ee347425c6cfb36f0e1e834b33cbb3d77aa2d6c89ac513216d0b9fc55d4b52
        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-rhel9@sha256:9b888c75a1ddf274b1f0aa053ddbbc9acc3270417712456ffa29ef81a883b38a
        - registry.redhat.io/oadp/oadp-operator-bundle@sha256:d998d58f1170bc7ee9d9c81f4bbba50ac1f65e8fe60fe81cd74166beff6f93c4
        - registry.redhat.io/oadp/oadp-velero-rhel9@sha256:dd5897b1579599cfa8d8a03a1c8d3cf68e3927c4ba5dee4e33c2a2d4c9e6ed89
        - registry.redhat.io/oadp/oadp-velero-plugin-for-microsoft-azure-rhel9@sha256:c2dabbda67d47c43c323d7790da7e091fb9715d2e166ebfc14e2e026745d4b6f
        - registry.redhat.io/oadp/oadp-hypershift-velero-plugin-rhel9@sha256:f8798364f94bb1bf4db264b0439c5a280b40cafa408c47b4160d9cc9c5d87e53
        - registry.redhat.io/oadp/oadp-kubevirt-velero-plugin-rhel9@sha256:77d6057b1783872ec65d7d6a88d8a1212c38aacc982c7efd46ed2eb77b5e9e70
        - 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-velero-plugin-for-gcp-rhel9@sha256:f1ebdaac4359d96d524ac1bf36f5b0b3bcf7d1bbb7299bf8d6daa55dc2bd2c17
        - registry.redhat.io/oadp/oadp-velero-plugin-for-legacy-aws-rhel9@sha256:50262b769de92249219dddb3a1ffc37cf187cd8e76a1f912459e8f1bb86f4c84
        - registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
        - registry.redhat.io/oadp/oadp-non-admin-rhel9@sha256:71fe65fdaf632c8f51db7c5ca1692f0fec79304e68114a91541b38f4207e70db
        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-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:246712ce23cdd590ff83d84e9800b4ed761886ed5bab9f9cda4125a5d930e7e5
        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-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:56db2fd54dbe982dde6a4558b664b19a676a8ac99bfbc8082d097cd6d71a03ea
        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-bundle@sha256:c0a8c5f5454426844c43f8732ed512ab30b5d4bd3e799fa3f133670d0ea431d5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
        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-bundle@sha256:46f8c0ea6e383b742ab9cdaed1c8f624c2cf405bb1ce39c0ea6977940d52de07
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
        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-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e4ea95a86e77aa64da0b1800f00c2e0e598776cde7cfc7bb9941a60bac207ed9
        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-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:aca3d91b7b9f8c1e8a1e0d045c42ba5f27444e0c1c0bc4a87c697b428c2fff78
        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-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:74f0cf91e2feb60fe794f71b9f56fa8afc60e53379a0aef104701dd6692272e5
        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-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        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-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        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-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: 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/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - 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-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - 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-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - 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/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
        - 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
        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-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
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:2d9da26bac816af608979a034a8cdc24b51e04f0807e177fc114f55c0e633650
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        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/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
        - 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
        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/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
        - 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
        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/rh-acs/scanner@sha256:2860ed271da6064149bb53568c5ad60e129918d55a2f244f9ade4a0bea4c4933
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:ad88773ab141f45fe24c61e83ec736aab27f652fb82ca2a85fee6f885568c5b9
        - 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
        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-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0bb76363a3a25916dd4493e177e9b2d36eac9633473b07fe0fffb853fd072da3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9b9b9146d9683d6da0ff2abbc8ea82b96d945b7a8c3740d72d8c018fb2b04fba
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:f0d2f5f11c2a96d34d6b4baf249cbf821fe064eade73c3f95c22f3c6981ac4d1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:081f2198ad70bfb2ec66153b50b48b950b9a5550ba996de413c5a2aff4052783
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b5fc3dcaa72bbc8dea005189c940e1cf2d00c94a6cf7676cf0e1790e1191d45c
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6a10a4859527946f61f497ff84b80f973cb7be5982d428423836b5aca81a1f5d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:105d10bd50a6062c998ed107dea388dd78f0caddb0b57713c8692b1d07042774
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c9d0a5a2871c24c0b1058e419f2b090429363a319856397855412fd2c0037395
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:711293438bab35b17d2e1f162e7f74f667a6e16dd32e45122f917b6817fefb4e
        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-main-rhel8@sha256:2afb2823edc6f3434e18db60ee37381b5b79f51234c1a261b6d0f8ed74cc8b63
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:297e7f863106c6b41f882bbd5b691a12c797c24d832473a04e604d4639e4a68e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:867613178d491f416e57975843817251490c5fbca2fc69d8b55b169bea675279
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:77f5db63e17b140a8d6b84e3822fd77463035be9c0c832b55b4977696da13ccc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:da6dd486a20fdba61ea12d2c77ea299d9795a9f22d9057d65ff992b1f5896e07
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9ae03669cfdc0f4fe56b021d911edb17159c07757720ae30a1f22d7f7a897c07
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:f167e928740d1c614e26948ea58f49e569f6a4fddc438cd0abe52f60538432d0
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:8db5206532e95a7ad7cb23f389155d41757aaf5f445ddce92b008a06627d3fd5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:cf5629823f2dd583495bcbbcf3b83b4f29f855ace3c388f5cb7b24a6d34ed267
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b254746ed3faa1f1cbcafdf1343a1957bf0214311b36f4e892be3000cc2aecf3
        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-docs-rhel8@sha256:e71f2f2347dd46dec790405b1bb98d54a348a4583949f142f5703be9a790f96e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:6b14e850cda9a54618847858292ea669abff599a40692e27fed0e337c4a60526
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d2e827a209840b7197960c8115720972237532eb9cf9d6fee7a36107053408ce
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:b47c96af1c9ffe4d8728da510a93efe21adc221225fe2b822cfcace6c6672ba2
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ee55a233d2a8fd77d89ec2c69f357721c7debead6470a9f494b3cd6a001829c4
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9b35ae6df2c19935783735d213483f3fcecead2f49f873a4f7844ef9fb5c7f1a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:df8cfdaa40b50ff2f2670d97c2115b47ae4bea443ae2831caaa468dd62f3c75f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6c32b86ed8bc18e384706eb6188406e66910bf34c8869bd155a60c3525d0fea7
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3d7c8b77671740e324ee6c309a84bbaa4d925e6750979fe4e46c561bc79f1b4d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:dfeb239931f7a33ade5c829a102cabc01f5c348e1aa35a7ddc24757cfd549629
        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-collector-rhel8@sha256:4d8bac9b3857af6ba351c7768f70ef30ef7cb99ae4df60cb226b5a793353a052
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:e282a8e5e606003ea344d44ac5ee7699563848f7160eeae183aa58ad740e0e94
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9bc25e81c21cda6d8b535d8ac67c1286fe57a1596001850e730f8f73bf371111
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e001b9f844a6c298dd74f1ab683f3dbbf0ad66044cec419c373ef4f97d47be73
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f16f92e074f7125b88e9e2033c7c12b44421145b93d040034fa4688626869af1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:df7b41999b542a477848823a1d0e7e5c29ae1b00fbac035007a5a1f33fac139f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5fdfd3690af60bd5ecf04741cd1f73259491da501700b066120976960567f0db
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:7f279bb6e0f34a5208d8711ba4d7b62c78f08b683815ce33f6aa28c23c4246da
        - 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-scanner-db-rhel8@sha256:c3ec88cd99908894d0e67153779062f90ac1b007980d66040a79b2be13798a10
        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-scanner-db-rhel8@sha256:cd0c205ee44eddcdf99b84e80fcf4403851d956efc50532b9d12013bafe44988
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:622f30b7f591194d86a5bf95deede0225e66f7b624db197f6289a5fbbbe887a9
        - 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-db-slim-rhel8@sha256:0b69595405e4e598183bbf4197ac5b7593724fa6162413f225aa01a542af18c9
        - 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-docs-rhel8@sha256:cb5df858e0c5cae8f77b285e23daeb83062bd72570c90ed5ea3ce4a02d2f5f08
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d56a00b3e20e60b7169f5c35d03fa6a1bd3b9980dd3ebc9d89d759e1d6d20ad2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:cd475a6c2356d63cfe736a11114de7fedfbd8fdcfecc56224a00b6c819103be6
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
        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-roxctl-rhel8@sha256:e6687c12d070069f655c17832d94c619c18274a259ccc59715036f9908e162f7
        - 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-scanner-slim-rhel8@sha256:c020a80ff82bf4d9b5cec3eeac5de9990de76041e22c444e664a20e15c46ce3b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5df359156b01505ce43e5f14c3b08722856bdb86f3d0d9b4fba785a2e580f346
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dce5db4f162dd40c09cad114cb802cd6d7c72d0c6986581f2e74c977493f75b0
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e4a27d3ffb173c87728fb637ca7fde92a9e78ea9ee3edcecccc2a5e3d3748b8c
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:459a8d91beff91638872d377a8b82c279ad2905ce3f4ad4bfc00f6822418ac57
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
        - 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-scanner-db-rhel8@sha256:7bf9415aa4b0746d11ca5a59d4179bc382a0fac4ded969f0c4294171fde27d58
        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-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - 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-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - 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-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        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/openshift4/ose-kube-rbac-proxy@sha256:cfa10bb6b461f302674f185b26c8d6efaaeba7f3f65d2cf05ae1f069aa2710d3
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:4c848eb7465e928251e05d32ffbc93cd14e7bb77972d22b8721bd6eaa4a93d2f
        - 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-main-rhel8@sha256:c39621837cbc8419d187a43a9575ec8cb4021c58ea1b56f215003d7264eb5d03
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:139d80d398e7e5cfc85839e3039a3630b48c7ae6650d755754430fccd94d6a27
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:eee1aa054d4d15b23be293f31d3ea659e0ffc1d05174ef89a6c977dd3d4377cc
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0aedd8e865f72ffa8b79fd2bab48974caec3eea3e3a6f77c89fe6dacb8947057
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:08f537cba262605a0eb0a510b6faf78e3ba26465f636d03cc1f7a6ed6b40d355
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:a0d9cd31d953aaf7e84f5a39f405c5aa2ea62e68d6c728a936ca1ffc4dc1b93e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:09e79b5db8977520f9951cc43c339c8e40b4659d7da513347d5a88b2500f809d
        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-collector-rhel8@sha256:01b9f9798d3ecbefe3da1ac2ac782e8e8b930e7eeceb82fe3473b5bfc1ccd40a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:762ad216e79be0837e98873202b0072c7fd399925ee94bde57cc61c68cbd5f4e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:34694b9f4fe7fffc0c547be4e311579b5bb0c1fa92d8257bf6d1581ffd655c46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b26133843687cc50e2c52d6067d8b3369b5cb28dfbfd15dd4b6062096673195a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8760d6dc68c86f0c5b53d8f0bfada0df012f80bc8e0023ba3522fe6829a05a41
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:bdbe08ef2d01b114702780fab76905e6eb1851684692ffa0a4c84604bda3ddb3
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7ac504b7824d17bd7ac55b1e59c26be308506f315a0ab0d8c45d3b4934c0a16c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a8ad0e76ce4cae9f9b36aecf125c4ed56fc2d776fe3df113d41bfc1c2f8b3602
        - 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-main-rhel8@sha256:364c107c34694ca33ac724de78db3e41ee55f9098d9ade0775a51b11f1533065
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
        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-main-rhel8@sha256:3858ab936d4626a11bbf895d41bad181364ee5df3312f6dd29ebeb9b7d31ec77
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:2f326cabf03f780a3e6120995d5442641764641f62430d82e05edbe21b30c7b2
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ff27f03064633d6d08f8383649069e39c868def4aeca8f2622750397e049d0ec
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b82f7f654235688fc07fb037422a73e1106e27024d39a68ef7fac1422b69496d
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:08aebe6e8275d3314b6756d522ec568ccdfb9c52df98c9822f187f6c5a3af19c
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e2b07cb7d690477d78a2b8e1875545998d4bdb946f80dd0533a14187da99dbbf
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:4b35f5f39865238a8e95d3cba7ebb5f15ccfbf6a2563c34f57d91a0b5c927066
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:59f1862c8ce188906499f08201ae05deeb47bd4fc5eab4be0386ca44ec065da8
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b5a15f2985b114bf9bc24a0d9942db5d0cb818e60fd15a2f9094aa00904cce77
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:e79a5e5681ebfe2d6349e2763ee0c1fa521b20319846958e402d23229b1f257b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:12db245af3b8475c9b5680bb0035c566109819e05cfe62bd1dfdfb5d6ed25bea
        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-roxctl-rhel8@sha256:bdf9785bff51194636c6e8a518448c6d12a297bd31c4bb2e79d07084409c18b4
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:5092c3fbb4a38c06a2f42d125dc718ef0e1005f304ad8046afdd2a5e7ccbc580
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:2c35cb6f518393d002edd2bf5f714c1d053cd0fab55f6152a2f35676e4979202
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c36a557c9dc2ae4479c432933a9a4dbef38f2be53360a68a5b6befb614d01dac
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:10d0cc82b6eddd089f3a7af37b872c33248513d0b4d3f094b6f62c01f4460825
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2bb643651c8d51525223df3b2b675947174bbe9f1eaea8688e1fa83044cfa41f
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6b55a25eb3a611c648d9be883828834592229c16f4166fd28ef40a25fc667061
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:30f9384244819da013358325cec364bb210b3b33b4cf9680698531fe50562aac
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b7eb17fbcf6c4a6e4205ad66f1ffd9b10a4634f6ef5045d407c266566b1f255d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b0c9b3858fc0547dcb4eb3065dedd5bbcf1e1f6707a8ab812ed06882d4f6d6ad
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:9fba889021a876ab627ff8c496e4b6c46c221c61142cd0c76daf33c89762e2c1
        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-scanner-db-rhel8@sha256:d6b4f8caf342b105c8df14c5c9180cb36123e08d34756ee8fe4f2f76c34f8064
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:763e7568704971cb4656727dc223374de13e82b4304dd3f5387ddc0f4e42b8b6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:65707fdad55767ff5598a8d3679fd0779a37f59501e58971b81bebcb23f1f9fc
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:664a5dc40dc1fa06c47a11e13b0ab5e0612a981d7b69bcfb29422abf3d1a13b2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:ba6e25a413c79131b966a097f72c36478933ea52deb55a62acda7011a96b3983
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:39cfd01236e905034f6645a73063427436c14e351e0e0bc735e73e62aa5a1c3c
        - 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-operator-bundle@sha256:123c0108bd7a190dd2accfd21786600f787147f040e57fb5f840861e2caa441d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:76f9dc2e2ee5595c36530d97dec216e2dbefada2fe0747e3f6a3a725b75722ab
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:0df4e95c7406aee7812d145cdd4d8c61cec32857fd2079dbc4244954a9d8288a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:183c75920ab8e7cb947cb966f1543e39b6fdb5e1bb0caa1b0cf5f89671f0328f
        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-v4-rhel8@sha256:1817cf8d2c08b04391792321702ef53d16a4b1ca06459c00c9c053128f534358
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:5914548f6ce2160e92c5d96580ffba23cdf1ae940c1f73f3f6424d15c6e97c37
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:41351e88688d23a443ad4f141caf0433b2c2789e6a1a85b4f5b36abeb5656bb1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c2656b794ec4236e36f48f71bf26bdedd9de27fc4acef39deba2bdcfcddab03b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:fde78d34ecd2944c7c16b4e823c76b3667bf6c5b468e9991128ecc4272ec0e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d928600f75461465598a10de8df2495a275fd5232a92b078f609d1f5774eb778
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:f07cba0738897e0e7ae74971be0470ce2a855657f133a6e1cdd8a7092f6151b0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:cc4b329cc795752ecbb178d2e4efc152bde54b04181334eb5bd70304c3354cad
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5109b304eb9458f97af85c2ba63e08f51672fa3f9406226b7f357b86b5828dc0
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dc7f23341c8b209f1846f29f889d00ef232fb58da9d5b4bd561f3933093b2786
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0ff948b5517df3773cae2df02b708c348d8707409899b1de4108588e31601c0c
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ed33e7396357f1db03a065573c020846a5872b12a21284439770686689222434
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
        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-slim-rhel8@sha256:899da9c23000bb821bc9d544ebb56bcda4f3245ceee5b1b9c12d09f580b4b9a1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:ffe41363dc00b05b0daa0c6d16efb30e534086aa4e3d7ccc599c86d33813138c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:713e61d3c8b55de1edc9d7834d3e8576718e1327665f94a6b58178fa7496c0cc
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:16b61ca1b9ee4e0821e7fc82fe4def75ed22950e502730f5704ec4fe63bb2e59
        - 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-rhel8@sha256:b5cd08349931669055f03d21331499ef2ea04597f8a90fb201615d43000271bc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:90c47c6f95571cfcca04aa4e05a18befad75c1b44a6f3a055fcdfdab749d29c5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:6da59c5b82625894f6efa3fa0bc5ea0378edd4f95cf42dee772e9c8a565dba81
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:19db8c5d2425dcf18ae63b025f946fc46adaec0578e9505415cb585797069e95
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8fad8ab2efdcbc99d9efa736a90cca6f236f0a9d45fdb355ae0b6b4dc42d77f0
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b630d53ad0b862151be7e14f0483ca5adac570216deae66f60e75af87a4dfd46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6d6b2696a12d49cf3403e338a0e028187473b6f43ef2b0bd72c7701200ac8e2e
        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-central-db-rhel8@sha256:ee14e7361bf64117af506a99906b3ae43a2b34c78f6e80a924a4419b047beadd
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b55eae54dd5bc1bc58e9d52722a5830f8ee73bd59cdd0190147df8145f5ccedf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b6f7cc10247ab111a4aea231858b4f6fd17bfd4e4b4e4bd62873567ab875fb2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:19b84b221ab9ce59fd0c8fbb4a713ee66304fd92822cebbcde0d77496ca82b0a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8b24cb309fb5dad63d92605093b7e1cb659d9c0c1f31f6d5a223746f25dc5e23
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e7106f927313f2e0a08c85cf1ecfd1338d222f02dcac6c40846858a7e0c9c32b
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:b3b498320cfcbf06da095f2427814d7f157ccec870383085be733ad7b6e6ccba
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:6981a243b8e6f095cbcabae3056012e9c60914ac42cd795c4163f4fce64a6aef
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d45d0e810330d7c95c2e4dc2f1bc5c5613f06ec09b4061f2874c8837c73379b9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4e48a0441240e9531e1490079e19edd65526b726b87bc5613b3cc62e3f59c1be
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7e1371e5e0b53983ca615309f44f6e4c124874ca1ae8a0fd4a59a470eb6a15df
        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-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7
        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-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - 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-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        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-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - 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-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        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/cryostat/cryostat-reports-rhel9@sha256:f7ac0c925c4728e482efc5f553c63a08e2dd453927e5eae606f83731d889c6a1
        - registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
        - registry.redhat.io/cryostat/cryostat-storage-rhel9@sha256:89bb337dd42d319e1fee74ac7650f30594461b7c56caa8c52f2628372e19ee3d
        - registry.redhat.io/cryostat/jfr-datasource-rhel9@sha256:b6c08667d49f70c3ba26a09a62a6224bf8c5d579be1988c0caca5212fe7d3d7a
        - registry.redhat.io/cryostat/cryostat-db-rhel9@sha256:1715bf1197a9a95f8f54ab02ca167448c1390b385c901645b062d066f0ca5459
        - registry.redhat.io/cryostat/cryostat-grafana-dashboard-rhel9@sha256:6fa1ef9bc8477162deda942ba4ca3f79b87928ad93ebefd4cb25eeeae0a0b33b
        - registry.redhat.io/ubi9/nginx-124@sha256:f3a04b52db496c383a00252832d8809baff203145a53c35cbb71c3ab45cd8a10
        - registry.redhat.io/cryostat/cryostat-operator-bundle@sha256:b634b9e8b54b89b9dc2119961b63d0288fdad007a1c48cc12b05595ad97fee83
        - 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-agent-init-rhel9@sha256:94ebd8d92359c1cfa18f9d3ffb08df02af53253c8b51d578b89c644806bbbdc4
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/cryostat/cryostat-openshift-console-plugin-rhel9@sha256:d64f56fcaa6c764edb1bb43c8a71af43c27aba56e36c8bac812c40a725a53ddc
        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-manager-rhel9@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-postgres-exporter-rhel9@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        - 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
        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-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        - 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
        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-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
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        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/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - 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-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - 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-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        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/rhods/odh-trustyai-service-rhel8@sha256:fe17d6e07ebaa088f274dd8b5e83892dacc11cb336065b06582a3c055095dba5
        - registry.redhat.io/rhods/odh-model-controller-rhel8@sha256:fde989817cd1a6ec8eb408a7f6c73e28ba043ab2d88035586b1b7e55fb3405cb
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhods/odh-modelmesh-serving-controller-rhel8@sha256:d94395fb251e45aaa73d09bc6106a2947c16b90d87fc3b64bfe4f2f600be5841
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
        - registry.redhat.io/rhods/odh-modelmesh-runtime-adapter-rhel8@sha256:08478a1647d0413783bcbcd966a73b444b580464de46efedb39504420f22053e
        - registry.redhat.io/rhods/odh-kf-notebook-controller-rhel8@sha256:cd0ab8d70559be6074fbaf1caa1d50f8eb75e1bff1a22d6d69380f19190df0b6
        - 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-dashboard-rhel8@sha256:b98171c5543815abf7c095fba92796ceed9ea44bd8b78db143d2815c6bcfdcf6
        - registry.redhat.io/rhods/odh-data-science-pipelines-operator-controller-rhel8@sha256:250db47cb873207cfb75c7e8a2f0de08b75b056a72db73362d2d79c08cb7b185
        - registry.redhat.io/rhods/odh-ml-pipelines-artifact-manager-rhel8@sha256:76c67d7015a2db6965219db6533e0cddb5b7cf699c88df3ef81155f9c192a3cc
        - registry.redhat.io/rhods/odh-ml-pipelines-persistenceagent-rhel8@sha256:857a8eb444375505ccb34a11cce69c1794ceabbfb00df06933d7f12cd187319b
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhods/odh-operator-bundle@sha256:b637a02d23bd8364cc8914421049eb60169c163ac70bff2f33591df1a1193002
        - registry.redhat.io/rhods/odh-notebook-controller-rhel8@sha256:753994fce63802f1e1121990a5c1dd722216446abee54cc1a7c50ab195134414
        - registry.redhat.io/rhods/odh-mm-rest-proxy-rhel8@sha256:8d989f54009484d7f43fe79d7c37757418fc3c15cd4d7e80a2076677a9645bdf
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhods/odh-modelmesh-rhel8@sha256:3827221f84d3aa22440d6b364b990a4ec0666dfb5963f174f7ed518b3650d223
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhods/odh-ml-pipelines-cache-rhel8@sha256:33aae32e3d348d382906f6e926281852f54006a94d7bdac188bb33debadec059
        - registry.redhat.io/rhods/odh-trustyai-service-operator-rhel8@sha256:68471555d0b2bb8150ebfae8d4f3d1dbdff9c5b961ff2305ef23ab7514cbbea1
        - registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhods/odh-codeflare-operator-rhel8@sha256:2841fd3051a50a1b0d9e3caafa20a8084b5c472d49393b372828960dbf156674
        - registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
        - registry.redhat.io/rhods/odh-ml-pipelines-api-server-rhel8@sha256:be57f237df156474a709667fa4fb4aa142118e3459963fed56648c1cb2e38cd6
        - registry.redhat.io/rhods/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:c5758102609821a6fdabec0277e03c4c728f82176093d1ade0570aba5f3cd8f9
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
        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/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:fc98ed817a4e9ab84e2a66063987304f0cdbe6e5620a58a7f25cccd61b34ebf9
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:04859c878ffcc8c42550a98be625ac52212f9b79a6fd5b3baeafb3592926cbe9
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:e68492a6a75cb83be0a968b832c1478b97f14e661376328085fd5416a08cbc31
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e9612ec99daa171c403b5ddf37788526e5375b83987e5de9b1ebe519198607b4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:687c8eeed55f021ecaab1307f0e88b5b16d91f72d63b3d7168d7bbee90e8947b
        - registry.redhat.io/ubi9/toolbox@sha256:7656f815a0d13ed37f56d11635559a87a3d00840253755c71b644b858f67d556
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:cb47e165935f0d9d3c88088689c37e68a69519357a20d3c52ab6f71240dab507
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:a88696cff8cd2cc2e295c9ec082b7f25f61dfc9ac12f1c208529ff7036d5af29
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:4c57dcf4df09fe0d03578cc8b9a3ca2ea485b6af0ca0203bfb85e640058b7daf
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:c3e283c0536266195dd461042ca0036ed98cc33650d806be132db4fba45239e4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:2b4136569e10ad7d47c82bedf55c1705a833dc67c8f833656996bfe1fddbef3e
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:dc0db686b7688f98b5f8595661022cdffa5d26a078289cc7aed528f0ee1d08a4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:9c2d6ce05775ac34ee5695b3367d12bf2a9c14e318a9544d00a56653ea5f2007
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:7da004e158006dcbdcf0c3b78c40411b82c9d56ebf54b1c30c245b6550b8ee7d
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:5f581957e4f8deebf6104a394272e6fbb1c54d813bf069e95875d865eac209ad
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:152b425725228953f43b57a4a034a6725993a5ca556af328ae5e06aa3f1acbfc
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:4c192208c618b49f31cf31c9de1a33c622ce3f120204c2eec8ff7c439ea6785c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2638e3a90bbb242dd2483fefe9fc8b472f334c510d0139b9b7c875c30dab7984
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:003fdc6cd1821d620e1ce4050ee608e2d2a32f2b08c8fa9c147e2e14418a8d91
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:80fd53a580ce7bc4d02023d38a04912e84c2cd50679fc5ea034afba935623157
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:a936d87646843edea2a84eb429bb44eb730bf3e04e8900fecef66721426dba89
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:1b5452b87b36de2b62febc777efdc6233a168ffcc09e2067e482cc444463a57d
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6a388ee3cbe3813ac955d319f0ab65a81da321d982c9881c6c81fe135311fe1d
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:fe6593bc73e77d315d82b7921bb1975c19fda1e7630ef5b30b69f5901ce30178
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:cfaf4eb86ddb9c717340ab17fa4b83323e5b40977ac70265376c87329a3f6f20
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:85202cb75250a1ba2691d65b52b306fd77566660dd29cdf56bf8962e8bb4939c
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:52e1ba8ebf4d55c64c94c9076185c5612b537e6e5ed4944fcd6ea87ccb9cd182
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:239f226328e5ac77d6dee498217d55103a6d562f4829e38abf65ba55fda0aca2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:2a16c353fd13dc1f3f5c4266f1b9786a8e7a100dc05f2d554bdaef082271063f
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:1b7befcd29c9c8f783bdd3c5654b0412ea45cd88cd18eb5f8f5a411f1323c6bd
        - registry.redhat.io/rhel9/mariadb-105@sha256:c390b12f5c2c3ea7cd897b59eba7127ce22f474130cd8c1bbbbaadae870baca4
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:5c0d56f434298f6e8bf6cf7061cd1ae6df9915225cbf04b010b6b59a64775cc9
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
        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-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        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-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - 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-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        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/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:2f6db789ceb3f90f9c9911c6392e62d0a8e4d61be68a7f7cbd781f47faab6389
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c48474563d98df32e7243e33302428ea8836be5e1a2e30d20b4d796a62cbf6b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:34d177abb56b948eaf9ce6fa62e37427ddee9fcecca48e752d09f72c69847a46
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:eeb8bdc94e7fa2b454fedf72eb75756052f8bfb9d92b116a8267a5584e2528c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:60507a3dddbd88560fd85204699147facd2b6371fb25e0bf6701dad02c0b4dd4
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:038ce76571217d6c624d614652e8b96ef6484562cf52ec1be88392b8ef8a3bbd
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:d87e4b1cba72eb4f50b3f2d59863799929c22ca37b01a1ff4828a9ce0be31f25
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:28ec01e514c15cae145499840597d1be1b750123bb6014de2ecc3ef0d60fa134
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:1dbf09cb1624c9f961f8ac8e371c97aa7c3fbfcad4c4d02ab4fad0eb86d2aa95
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:9aa5a93831992588766ac8594ae3c4dc7111d08a90fdbc8751c40484339e46d4
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f9c474d454d0b006e06859601ec9a64b5e5c91e9a47bfab6ad6d8cce5aa6b89d
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:4b1b9f05a94713292a7a2f6782fe1d3eea6f36214c36b38f402aa91a554ab18a
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:1a1074263ae26e4c8b0e3863228c35e50133169f377ece6c47b58a12e0fcf453
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:81ae2b95f2da740cb5264b9ba8b85f0f58bb4ab80d6431f66d52848ed0c21afb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:61a506fbf263cd72951ac8bd151127e0c74fc74f0a05f7aaecaa54fde47ee490
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:13b850a5a3f8776c6c8db887c666d88df72901895b5ef1be9a8bd372cc02fcb8
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:8ffc5da798e783c65d5be7f344219b2951d8c2233d6494a4ae2bb5c86eccd699
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:45498198fadfbc1457bf2a6084ae7ea515d454d86d148783aae3abdaca6e999d
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:df34e9d2d121a3def2dbb86f108b3fb6948bc7ba7cb44c70801dfd2e81d3fbb1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:13dff890ec67fa56864c244a40fc404e9eac05f33573dd16d088b37f9340ec41
        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-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - 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-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - 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-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - 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-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        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/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:0224a782de0b062a91d9b0188a59f8fb169db2b7e21bed7624826d3fff7b7da4
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:3094dd9e7dd9fcc161fdfe983557edc9d773b2c07e727c0bbb0e37ac16a39d93
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:c16cfc8521eccd9b494151ffa98dde6b7faa5e349da611d6091038a8590dc447
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:aaf677584e83ed6a93586afbe1c9b698430593e346c8cd00fb8485ba4350241d
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:eb68797b15eb5d748f2658ca41c7aafc5b9ca38882c56b87a22d5c9a3b5e2948
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8c99d5e93a469b2aa7f7ad4810f17114bd032392135607945669d92182e37fab
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:0bda59ab4c3db060b7221c630f6241cac086e3853470a07726289b87299f4da9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:4326604a5f2f5ac398f5bccf5259ab166fb21dbd273eb233ca558a22c1163312
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:84a7c26966f563e970e5398cd0396df2b4fae3b680f14b38a59bfa34b3c3a2e6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:a9546158ae141cc3c590732d578af95ac599965b3cfd47fa440e461658940125
        - registry.redhat.io/rhoai/odh-trustyai-ragas-lls-provider-dsp-rhel9@sha256:c1694891f19be1fe1abd431505549dc02021c389e640e77877bbb7921b42aa5b
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:c90ccd4d3167d2092c451af95a773fea19821e4b8bf8fa754bf0b1b632a7f51e
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:4f250fd17c023c43ca64ade19c84afbc77e72e66548573c2f987d10e6aed3821
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:4a035bb354c4a0e4040c277b2f1a1ffdc7e61f6f505c5fa5d032d22f50c4fa29
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:ee6b2596c10ca608cc0897a84336871591bf701a08bf90f345d2232277cc0c3f
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:bafee27b0842d196eb305963cc9b3f29d31cdf2c014af88b5965a8d908cc6f9a
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:b87eb195a423337071aa318c28452d12070041168d41fb41e3ae3207619a3f16
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:ad756c01ec99a99cc7d93401c41b8d92ca96fb1ab7c5262919d818f2be4f3768
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:5f5f75d959ad8507704821add365539dab7401a7496bcc7cf2357c6cf32df3c4
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:03db3dd3eb3290b048853a8d943fa1a5099727ff0d1934eeb0a7177bdf0031e4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:1431c04ecb88387a9e15566ba8105d19c7fbceecf65eb5731fe69cccbeb09cf5
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:40e552687ecb12803db16edafb0cd93e39edd9269d1471a7ee1d011b43da1fa2
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:d5d3f661e1ab392b1e977f871a1cd95f60e4d7509f7c79d714a4bee10aa48293
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:9479d6829ab86ce510ca9c25e3fc69dff86553467672dd7f5cb356000e128916
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:e45e6925ad930d9195d906fc922cb956621c98533cc9ad1916c510e8a79c0904
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:c852573614458adaf8d0e4f8f3f675c036c3daa1ea8251c7601b2d4c22b3e7de
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:6a151dde578c2fbd7377864cd5d04268853e49046be62cccc1d298e444c73f0a
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:6bf37b3786398e1d9b7004d5b08e0b4c58a5dcf453c02a9fb260bdfe9c32161e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:b03cd2977bcb3d3a44795eb17e7fbc7dc842ab277fae441031ff921bdd7f56d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:fd83ee0ec98d0bfcd7f8567b2f802f08a3a8fe74eba2a74ae560f90c1c72bee5
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:8d17607ba6e4b859ed724acd1cdf54e7dfff6989fd23dfd7b77faf55efcf883b
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:59f75020cf630e2c7aeb1ca7692745c8e11e4ff46cc29fe7779213f7b56d1e71
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:d79f02050b0cb8847c5f83c0a76ab47bc79a2fdaa2c18ab6ee6b3d94ef9bc7ba
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:77cac4adb89bce424db492657eb9023ac9574fd32096c3bc68b960020fade08c
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:5f7a974163856d07985b5da257688aad036427d3724194050782e58eab0cff1a
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel9/mariadb-105@sha256:a376c86dc5b288516604d46bfb6025972e962b2be5a00e70d5d479ae465e0bcf
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:c00d908ff5d82c0b04ade151be9a5a97843606dd9fff731c849717ff79a3a596
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:ed78d0c5946a2cc75c8bc2db6dbad5d757102acfa9defcd3f4a30829aa47d9d1
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kube-auth-proxy-rhel9@sha256:657bc0b43fe2da3211d80dc5085f57dccb451c30b1a254b87b4876745c414d36
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:84a1b58dfdd85eac95478c681affb502d2402a14bf2879aad36f1d17dfd08f39
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:de67ebe1de42971f1cb99df039044a6c79471802dedf666282e349c579f79c3a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:3e08c969736bfa9a44f6c7811a4d1428c03fa80b52e0b6391aefba3c36758751
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:dd37de4ca53ce242a0f67a70d19eebf157679098a3417e9ffdf8e24378f6bdcc
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:1318b9f8de94db57dffb87447b34bf660eae0792915b4aa64375a0ba0f13ad85
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:2efaad91d9b7c997bdc41e6120d46620dd9890eb6bd6baca7124aa00f66fc972
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:3d63cfa35ecee611a9075ea21060f75b0926f9b018622f52282b9f375b5ef968
        - registry.redhat.io/ubi9/toolbox@sha256:668ae64b30c95862377fc2414e48714f1aceff9d23a1d8c4141e3e83a4d4fc2a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:7e7aa488af45e4a038664881c7da3a9016fc9f9c7952efa35dfdc77971fcd5d3
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:bfab4c5965e44d4428eb5a3d3ce85a81a163e15093d981a9fc474cd8f9fd64c2
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:bd7352755c52f16dcfd7403f120f65dce7742dfacc393fc6bbecf359faac47c9
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:4000a91132d67503a4691e76a7079f9140e3c8091fb1a59ad235446f96cb1a34
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:70e900e40845e82ef9ff4ac888afa6a6e835b019ad69aae7297d111e087520a3
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:c8c0e4bd524abd8295ccec00e7eacf6aefedd1e67d345e09088bc87e10f6827f
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:13ec5c9b96a9ca8c0a1fcc0568cf6f893478742d28d3b1381f073b9bdafb3320
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:9a6f0917e40d82684148d25c96e2a5b4a8a24dd3202734dfd7450f55d9e8b9c0
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1552b758539ee09050b1923cf214d6d88543d51d7ca230d6880818ecf287c10b
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:eaa42ee5a963696339c318b511a330b2b6fc9e1eb173d2d47f9cb757f6eb3da9
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:726bdac8c5791695a5b0a43654fd482ffb7eda2fb384dcca42a73cce923a411f
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:4afc7a50800be57c57170b6ec2345fe0a9fab1eb4ae179025f6fae230bc05894
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:a50f7e2e8891acbbebf64a2acab98ae64e21cea7a5b5ea4b63a148f4fed91b1f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:a59bb87677721dbadaa3e88e29d47470d0afa2c1b52c652caa77f74466beb698
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:d11ee73c3dab3bedb39a6da9c29b5221a307d9f69297a12df3489f04cf35506a
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:4fe3183daa06c1605c47168db6f96a6dbd2b72df8ea99ef755372d7271299c3c
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:b6304ccf7e8064bfdbacdfe998bbda099d6cfc36a9cd92b77e4126609ac34f4f
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:3617ae4fba7499bf17ef591df2e787b353d6ec7962bbcf14c4c8b3edf045f314
        - registry.redhat.io/rhoai/odh-mod-arch-gen-ai-rhel9@sha256:459e5abcc3d5403ef25f53eb4c6cba75c88371c84dbf02d8cb67f478fbe624aa
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:95177d662c1ca6d86b77f2a9427945e4d65e8236b7adf15f3d35025063afe94f
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:f5b70a687fef130c35bdeb108d7aab4a0eadf6182d379b6c517e9d1157713108
        - registry.redhat.io/rhoai/odh-training-cuda128-torch28-py312-rhel9@sha256:851f2b31fa418d2eb172ddfa6010851bd5d4f0844d16b2b42a408f2c0b985b86
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:20b705332935cd372f06b86e36c521873b39c7660b077b90d39b7bd37700c679
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhaiis/vllm-rocm-rhel9@sha256:8624e2a5086cf1303b59154a817f60a3476d6ca48899261a2e477eb9e99ae781
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:45ae3dbe4cd8c5ea8a5ba767bb95c540d618b6e8250dcb1dcbac01e3ec805245
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:daf66fb7ec41191aa15f32638fe79f4a76c7d158b705e0f761f5b77e1f91336c
        - registry.redhat.io/rhoai/odh-training-rocm64-torch28-py312-rhel9@sha256:501794be7653f12539fc420394c5ecfa2986109ef71785534e6e068212d07c25
        - registry.redhat.io/rhoai/odh-maas-api-rhel9@sha256:29165b6056073e3f040a8d4eab023dcc522281888f7e6db0aecd447762761115
        - registry.redhat.io/rhoai/odh-model-performance-data-rhel9@sha256:eda8a51f260ea4e061b528ed2ef6f631a8680e5623ba5ef528698e71d34b3a58
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:647df7a0f1d33fa04e39f1d38f918236e9983409a07fd9de21b085fc847f0854
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:450b2b76c53f17163cdf91b03d35c296b8d7298d9cbb7b792fd2eabeaab794c2
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:65f00fbf16f2b8ec98765b854f395cee16d69f2f58d0fe81fc1ebeb3817fd326
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:78b6e29c66a425b9f097cba92240f96d32f756d379b779ed37ef51e8625364b5
        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/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - 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/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - 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-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - 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-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - 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-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - 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-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        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-launcher-rhel8@sha256:4da77afafde99b15fd357a4ab6609644bf6330a1d9c0c03e64726ed1b9633230
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:fdc2bc06b0dfa79ebc6451ac3793b5e8d9f165171633831dafe46ebc18c10c35
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8911afbb65c8c4f10c3597624485be54b9103e87a5020b718b35ec3df2c9bf00
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:7df2f8bc2c5c0f4f347d009b62a058b5107413a2abd789f6010eb4d6c9e4f8ee
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:5d15175f934017c04d6a6057200ff55b2172a1f4bcbeb0f2cd9e9e545631d93f
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:0af6a91553f40ea40e86d85edc204658af3e5a45e8ab94cdb6b767e545df59b9
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:932e83fe9c9b54934767a7c5af683b2ab08bd2b4f0524c191f1c766dc64d9c3d
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:8fed8f58732bff512289fff738d0a94be67286c41b24eaf5928bbcb30d88c88a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:a4b9553fde02d9c67a9c98f063eaf82fb1d2689f4b1269e57bf5f12c8d4adecf
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:232ebac25084db056fdde49477b5c1e6a03a0228fea3758bcf6234b3d0eaa582
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:d2514bf4b4b2d9abc19facac3f1a55405eb3ad0d9e9203e8816bfcfa08c9a6c5
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a1d590d0e2b3fae9ecbd843a664dab083061e797f66a9f0a021b0c2c487d7e45
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:24238abd46633709feb75f2a3e41cf6c9e8528d2c0e4be2fac6f56de44e3fb9b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:220cad7a22d40998063c6b4fb2f63e69330e64ca7118490a6680b05fc99b7733
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:4876f14ca9cff0e2b998a56f2f56d0775edf3963de610f4b810b4d94fb12d719
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:d9b55e8f25b81050380b4aab040243dc18a7432c48912c9b660c97dcc5eea008
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:65db5e8cb2fa46d020ed4837d4479d133b52167c373e65f81cb590eec5391af2
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:52e8deeeeaa21b17370a5d5cd644745da745b6e1cee8c6295d6df75c8d2aec04
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:a9c6e3afdf605465766fa93334cc0f6bb5e46a5fdfd7ec64d648e2ed72b05ccf
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:f4d7d3ba4a0d3322bc9f327e095e9ec56073758f6dcd8da8c7bb185cf952ead5
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:12741379ab24d2286b5fae77f4383fb65713af7b3356fb43d8254ea85d4b0ee3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:cba9f25ac6bb2734bb990a622b515c838b881edb688bf44ff196ebe7684ab74b
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:2007da5abf840712cd2edb50462b2d8d571a0193c3ae1550d4a279eddf2b335f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:214ca0608fcbc0fd585bf01768d28c7ba17082d1043349ec8445afd663095383
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:807ec05e9e107afc969e718d0c2c980959e2fd462e777a5ff63e55156ea150a4
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:9f7b1cb8623de8b0550b0ba124d3b50f5e960ed011b33a3262c6346dbe2dff95
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:d709f65e1194bc877fa4f9ec681b598467703d94139d57b58c24490d3a59fb82
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:267d6795bf53f9a1955d73445776a428dd042af0cd3cb8bb5b91692a1bc1e5d2
        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-notebook-controller-rhel8@sha256:8883bf71abf39b4a6985940c287eb6ac7dc137d491264805d48bb112b65bd008
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:74e6cfa0bc481588cb8dc61c206ad567fbd2b28f43c2a86bee4a8e0eff55447c
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:59e9cc9cd57ba48ca7e87ae1e797a902f826bb890cb198ccf549f76ea581ba6e
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:fb630d6f5817512733b8ea05f7147121928917a24ac8d98239f43d920880c359
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:030c53690fe25e15bc9907f51c3f04fab39b4d085ff2098d26316ba32cc8b09f
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8c19c7fa535f36bdce3b73cf3300e321909d44954cbc63a8aef6321c5f2fa693
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e1c19bbcd4c010ef2bd4f760eb24b2c96cdb82b4e025361a433e6a241eb23cf5
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8faab013568ee023968a5ec5b3a79977d7ddae3deafff6328e6fd56a27198e24
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:688389195aebf3f43e74e40d591d2fd5f9ae41994d8ac2db661f292f6eda012a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:2566b73e98b783871fb500bb1a8cc4e3d58a513c1bb18abfb525da0818e6138b
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:cd6b535d95eb1b44fe261a5336270fd898b966f431c14e173944484381c26d25
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f5b17f44c5ab72d6cf658f72f24f15e06a5ac9be1790336f7228ab8e7cfc15c3
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:77bca19180f30ef08f4d1598ac6c365e190bb7909ac4a1fb35d9ba9ba8d6ff7a
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a3048eaa8924ce3571c6e78014438183fae70d9e8c833a7c07774c675104e3d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:cf3779c64bbaef1988886ed629c516e7d6ef7bdc73b9c95ad4c087b62e75750d
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:6b2c0d1dd40e2c276684e17818b14375bc778e6c88df0bdc3cc24bfc9294804f
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:fd4ce524acc1769475079c7231f5ea79ac29551c513855ef34e5694d2c9fbbd3
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:71abac4fb3d613edef7f3ba117a73bbeea61f341d6182e8310360a76576c789e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a37529eff3656a570d796083404e5a3f63603afecfe9e738da1a243c0cb3d7c2
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:9ccdd7fe8223057a2234a3a2eb3b492e7b69e6ce714cc26a805fe2dd82935195
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:a55f73d72ad2b07f01c49949cdb00969bfe4789375b3d7cdf9814b969fcc808d
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:363a35c332fc80b068157951d5e50e6b7209947649cc64803ffc02726e7581ab
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:850901511bde065cf73e4c18d787dc10b6e91ca6139fc3ba68da28c41dd28236
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:7c895490d49beb6bd724f47ad1b17ce501650557b0889314799c4072632f2b99
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c2ee4136ee0014d1ef395b5e3bcab125c846f5e258ece3631d912f431c8d208
        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/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        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/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:d24e277f468b0a48f38801e8e0bcfeb8264c3f7c128073ddaa17934b8572cc3c
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:b6039c3c33a5dc345ceb8e757437bb13023d2bf85cc2b4c10b9ab3887e78e0c0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:bbef4839f24facce111d21aca43898dcf4e6cf57adb16200e3f1590bd5f89eae
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:520ed21b80e5487b3a0a13b7e5c7d791d4dd28e0b6799d57abb65d53fca5a03f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:d47514cbceb3cc96e9d33b7db6fc1df60893e5c4118bf6086cdd27f04c472773
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:c1c97b6beb759d3f6f2dd53c4258e4ccbb3bf35cf11873bd446b135defaa69d6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:de0e4b7fb822101198817e83cd7e9f4f7406e75ec91d07a833a27a417cffe66b
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:b20ee16b776871d7c49b23f2bc91726812998561129f5dbd14eddbfe57964c93
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:baefbe4e7dd5aa74c71cb81da4a7a2b888a02d3eb1398ec4419bd8003b77f0c2
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:af4721d61dfb61c75488a1bd6a5f62b23e20d7b7586a9cf51ba062ece2837715
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:876ca7ce7b0b975688fb4a77d6cd1a6f87cf9eb40c2a9a5b84d8cffdc80eeebd
        - registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:bf6231bfdbe52b597d86e03e4730ec105ebe7a639fcd529268b7c0423f2a890c
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:6275a19ef06114b33d79833a94ef10cc8203368eee98e5d415e73d20cae1db85
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f49483df1d342d8e39f9a8085920aad79313a475df02a2292a136ecb784402b5
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:4313cae03c041d461bc276abc23d706b582b5d16feab316796ca43478b9dc705
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel8@sha256:6166f525948a018c41d735014d97fdfa52024f7be31e18976d85d1a0d88901a0
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:6ad35cf5c4c62ed5ad4e192afe8cebead9796cb24a964401c76ff8656c47742f
        - 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/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:6f01ac7cc62ab961b9c8a630a558338a61f6d7902301c4a1ad337495ac7ce85a
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:4e8f6c6ca0ed516b8310af0332637683b5bfc8f2946eb935c647698dffbbcc79
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8a6732ac3ca60f13dcb1fd8f186d2fc5dc601b9b5981a58f039af9e237f20044
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:53ac36baa374159b9065c718a9ede821bbb61d9ebe9502b2243e0a9f7aca0d16
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:87685c5cab105d876ff0d14b0e24d8dc2a1ff5b55bebe36028c5f3376b2a5271
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:71cd15f0b1acba3a48ebedff037bf8a846b426c18363a4de8896a376b6b7b3d5
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:b24c25dfdcefb4ec26e7f311c00798df108f7685def2b1762b7624fdfb160ebf
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:a6e02e1876fd5382ba4921dd65650b2d747666feb96c839f34e99d2972dfc323
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        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-training-operator-rhel9@sha256:b2ca229bb4c4dbf04b96766b8af8d9f55f2edef59ec4110de0d20f8c857e7d27
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:a44d32a18b1e906c1411cafc82102881573fcd04e040a4e2ba6bd1bd617b70fa
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:2f3f305c97e50057781553416fb4026cde306ead0fbe0213627b9b5bbcc8a0c3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:2065b96bd6f0a830eab66e36217a927448cfc5a7dabf2a5e7d907aa6c40657a4
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:2fe9473cd1d6c445d2ca7cc357ee4bb009aa1838f9cb69ea418296b2a044816b
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:7b3d7787ba95156de9c284ad78f2d63a0d3bcb525f4d8d11ebf0203d4c5c1fe0
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:6234e15f001122ab222481321153fb0eba7f4d86bf3dfd64edf3f6cecbe7d62f
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:9104cbc2d595933f0a2acb7313e41ed69905e76a9fae6bd9820e7717b56a632b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e87a96c8a61042e83b8db0194adf3fd84c3a311b1f3793345a35bfd0e7ea56d9
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:32c9511846077ef6035eb19be7653f6a78e0f207eb420ab93b18f742ab5779b6
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:f9965177de24f3165ec4c001c14cf1e2c2c01ffe847839af837c442e3c96beae
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:e6fbe6723b4801f6854303b3fd7d4a4a36727bdd28dc28002b7de4929739ccc0
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:d59ed40de694bc0e0564bab159a5b586cffa0721b6d761fb2d81dd42e6225d1c
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:cb5be3dd7098f4c8d66f9e85ad04656460df6102652deddc6cccb884a12be733
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:abe1f9dd11c7313fdd55b678be511a5cdc3546654a68e2b53d42c1013fec8d00
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:1709fa3c79aad4ba7eb9be8299949396092c8e20210124e0c0936385bc04e839
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:7fd540586a1ca111370100a473923b3dc6cec4255e9e4f3654bfbabd9158a2bb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:463e9be9c4409ba1e5a42713bd65844a023e7a3e9032d4e862edbaa5fe35300a
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:d7c4ac937add511460a36375d9b6b3c475a3a9a7cc96c00df2fbad6219aee0e9
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:bd6d1599b4ff9eb890be9808014715b28ca19247222d65f40df024db4dd3525a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:13f3679ab289eea9de54fe129a7c83f6c8ec5d26b61b430637a7c4cfcd31a74a
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:74d4e0174655cf6f6273857325a1e714a1531c5a06ad38bf139bee9c7d8f5f19
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:27415b1c763cf89b79391f0b039936c3e078a078bda4420f13bf10ef9be31d5e
        - registry.redhat.io/rhel9/mariadb-105@sha256:5e77b33ce04c1eafc2e8840586ad6a5b51148dea8a46dda151071e28858331f0
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:5d79f0bcca0a213b53aee6d88834e503d343821596b857b13d3a6362de8ebeab
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:e3b90530c6e38f6940d7f9408e9fa2c81eb06a857ec2b0bab5d006b1e9a63a4f
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:2b3aace0d80474470e71c2c8291b25738e096109229fe6d5d3e06e9885ee58b6
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:ccba67a6a5aa3403e0018f29dcdfef483220dea8065d8b572e80c653ca992add
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:5914f71e37c815ce2567826896e051303bdef52fae1acf8d02e672fc24c7eb9d
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:2f1a0a0803b2f5118b167e9d9c2e86660add5f79ee6f47044f63b0e8abe0b75f
        - registry.redhat.io/ubi9/toolbox@sha256:ea4ce8cb8f59cf1b0709f1606d7cab074c3806d4016964eedc0555410cb5dfeb
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:b2c2ea9d35edbcd16e1ae559c88a453129b877fc049ab7a7cd6c2ebb8f0bcb59
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        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-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - 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-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        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/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:90833e85e0de3d7de870074c8b04319cd11b913b9652af6a5727aae41a91458c
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:9c90873fbd5af8fac8efc3c7c27fba742a06fad2d47f336319dd05d2b116867b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:987c768c0688431a53e48a80591f2a41e074994169f9e691b28b89528d8e736f
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:92d9e4b53d580df6cc1f14a849b477749a1306941a2e8f9d1b6160f4911c3cff
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:080377d42d782bf525b4072384d0cf8409b48019b3748ca7c855f340bcb94251
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:cb711fcb32b5ca0f34c4e3c67624bc4e035de4247617d988a9e841fd58c1c911
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:06a6d5cbbe80d49bca9e4db9929571a69e35ae7951fcae84dcd6460f7ddf622c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:850b78a201effcafe33705dcd2670f1c470d8b46ba6e307032403627b55a7cfe
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:df2edcaf4402b11ce24439263956e3b0cc43efbac2fdf152afacb1a398dcc59a
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:0b8665e8978deb73be2cc65830f08a74a5a48f3e3ee7b2b817f7bbacba257d22
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:68e1331f13dfaf6641a1e7d54f4cf29c0ef42663abc98b6dc69167892d2d8adb
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:1a6e29214e06a2665baadbed598ba758d6141bfa522984eb05f05a80558a403c
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:5f39b11f0cd6db2d7d6e51ee666c030e2643aee92a090b49656c1e7dfd8a5430
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:889f046b255b13d99801108588d3abf577611b828657b5240a18ea21f0e3cbbe
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:9799003449bfb61ae8f59efd2a611b0da3bccadd9b20cc1519f6c9279d085337
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:eb4da3a645b53acfd6ce8758c043ae19b4126e62bcca09165114a141c2c8d014
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:1c49888ba2e9449c04d5588040c099290fce4793c2ba8874c1037316e550d6e1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:b6ecb3858c201498024e3bfc4a93e630699be4b1fdc3a65fd2d70e4b375eb9c2
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:ab8792fcd16b1aa0065444ba54335cb3e747379740c3ec2d56beb46ff80cb044
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:91525fac5fadece75fbdafc40b94445fb92c88cfc8c2f06b596f8c6377e59c9e
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        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-cni-rhel9@sha256:d0ab36246c556249b6d67346eb0c72ebd22483a6502caa0fc75112a8d327b053
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:f16cd8a29ddcbb3de77cbfcf7e1da78e42cc0c1c502132d477a01c52689cdf23
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-operator-bundle@sha256:f596dc9323da89f5e45e71192f0fa698b7bb29b8205eaa0fc1659d68fa7401f4
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:ea9372fabe06cd8e65ea7b4567ce3c8fbddd9d673dc34a12743fd95c548059d1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:c21481d6dae58b82dac93b1b47b9d9f53a30617fa9d930a0b5d075620cffa74b
        - 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-proxyv2-rhel9@sha256:cbd6bc47341ab8618609f89d063552e17232541c727429855c01deab73e4d06c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:e3978aecaafe2678355e21a7303f8620f53d8b774f6592f10527c15bae957224
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        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-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        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-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - 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/istio-sail-operator-bundle@sha256:6cdd4499ffcf0843dc9cf68a15654a995514e3f97418e6aa06bc50271305dcac
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - 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-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        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-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:459720a287d839ad70886879d8089d821a2f98dcc32a5db5732ecf18a05b3fa6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - 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-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - 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/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - 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-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - 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-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - 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-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - 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
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        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-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - 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-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        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-hub-db-migration-rhel8@sha256:a180db14ad8840a766a3cfec7faf94ef909a079276be904b4d1064f8aa8c0ae4
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:bba6ba57778ecf3f5421a2eed5fa0d1192a53e5640413ffa83e6553296db13ea
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:d60baacc52945bb442bb8b78fe8848f4a4f6e7e9a2818062631d174db5f31c67
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:ffcf1b0e3215b8e2525be0836d7c727e639b64900954a804ab2a58f9bc747943
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:f3467d9f19c40b5c70659f0d22750e603dd7cd11cdcc0b81310a5d2abfbffb2e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:38944f69b37bedb05903dc14c58415dba21873d2dd9a0fd2084cbf7afd4d5fde
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:09f162c742dce25deac02bdb5395a7fb714f171f924471c96f24680f95ddc975
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:a69dc4520666b54d621f1aa8098c1457b2d5d2db125d612ad028ddea1a4e53fb
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:34a3c32c391ff5f810f0c84ff3ff5a729c1a12245f4edc66b4b22bbf30ab1600
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a52bd29991a8a54853c938725162ee832f95f053b149b657bc24358f9aa0a1f4
        - 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-cli-tkn-rhel8@sha256:9f26e5a8d063f791d355481b54f02f4394e4092c20606e5bfcc604c669b995ec
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:bf94a5e27a3a662a4a35ddbca377e4c311b8bda45748d7c4cb5549ac46d4f4a0
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/rhel8/skopeo@sha256:e297b84ba6f1d5eb2c37e2c3b31c9a9a4c39f9590e7d7c32388165245bde4835
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:cf566538843704d03a05142639d58e8cb074aaf4bcdd03c0585574c3bc960496
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:e72a7f6fb660ad48e275a70cd43c085df4b87405e5e8c85d8665b421551c4d71
        - registry.redhat.io/ubi8/ubi-minimal@sha256:6825946f10e8c81586fa7815c4f06016af05cfc231d921ec9699402a6655d201
        - registry.redhat.io/rhel8/postgresql-13@sha256:3903d562425dd564986123280dc076548fb3d24c74138dcd857652f53052e0a7
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:8f0704328fef0e6031088290fe47e1f7625c4825ebd2e4edd9546279f87c5fb3
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:8709d35b571c163ed6f3e24b6e653e7dce8ee80f0440795e50e69f0ecfadf304
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:7a460bc5609afb2865e20f04b5c0e86ccba3c9a31a09ac14d799556d4b816356
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:9d1436c1569dfb8dcab5c0ed2d675fb4f8024fb3ef85707393d1091cb5203749
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:3cfa3e3ad23f04e75417c2c0fd88c6b0f2b69361bc6947cbdffc594ecbee6d28
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e53cec5cde1f23ab17082e3326e3328468dba3ec6c0462f06d030e0b1dfbd8aa
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:bd524c790588652e11fe8ba07ea8df0a2d483840c9a84fb35f3dd3e8157233a5
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:21214c77e4a525e6eb0a8bd0e77bb7ede120ec2030dd198fe00ff1cd79a58239
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:2077cdcb34dcd57972f71b403cad02ea715e19a7096e95dfac228168e49acb15
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:0c9d398a73708b5877467547ac6fb1e9ccdb65159c454d31628e93a59da47f3c
        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-git-init-rhel8@sha256:f6232daffac97d841801ca3b356383ae73dd3f74ca6d635475283865737b7862
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:ed20e74c11ce0ca33bd832bf29d6311985affd67bda05f8cee045d8732d235f8
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:c2193380a48239c024d9dfdbeb45cf2c7f462ecb8ce23fa53c5fdfc162bdab58
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:f7fe262df4d73aa598d63ef4d463bbe84009e784d0bd2801de1131e6ee0f3ca7
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:c45a22f5660fe2228eb55d50f061fca7854e52af7c6600f62f8bcae93c15edb1
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:2f76b11f048e51d0e33f997c5fbe0f9bf4096a4a9cd97d5d6d8084fc10722c03
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:fcf8b863aa41a702afef381a087f4daff7dcad1e34b03d2c0b0192bd5365cb71
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:e73c1fbaa426e3fc8acda26a38abd1d25de1f933893479269375af40da53dc5f
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:d92d48d42e42082a29d61a0f8b8ba7dcfd5e8ef0a8f66ded0bedce24fc81be33
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:98bf4813124dc9ada33da9530678e239c7953a1302a6cf9dee2277c276fb5758
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:8a593c1144709c9aeffbeb68d0b4b08368f528e7bb6f595884b2474bcfbcafcd
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:b37a8c805b43eef99b2e7df017622965eca79f0f8f4b1f05917fc2313dbdf40d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:8723ee8cf1f41a85fdfe2699b014df105db50be7c995371dafea698ade65c91c
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:1bc3273f138cd3a48610df28c87d05fda126d8cc29d2780a0c4738ea9bd3e85d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:702899060437993a77a038c36284b99358caea038c44ca5a94f892233bf85b99
        - registry.redhat.io/rhel8/skopeo@sha256:29465586e92ed04d2878dcdeda2d508c7e8e7539762e10296b52d631929960aa
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:46a680ca7416fc85ecc2d5c7fff84a45b493d02f10c087d3088992e6475f0ee9
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:91c836b13d3b9d4dafd4198148172f3f42122f9b38bb8be53c26f5b3ed9cf045
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:9b6bd5c8a5da471bb05b4bda7a4ae3a86b9b1d9128971aa6ce6f4874bb6dfa0d
        - registry.redhat.io/rhel8/buildah@sha256:aac6629389db17e99894c5bee0da01d4c8065d11d8c6f6e1602f9484290baa70
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:b3642afe8e487884ee62dd6f0d22b84627552afeaa61a3f56eada858795f1d5b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:14f4e749cdc026dfb19a53748a4eb64b875d7dc7626fc0b30edef364f3dd612c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:4ccbc6bb8fadc5ffba0ff8b0206031b51db1c4acd7c0d8bbd050bc73975d4a2e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:3445ab65ae506460e44f304df03c249ce7283c5fb7cc2d75b660d43cccab70a8
        - registry.redhat.io/ubi8/ubi-minimal@sha256:f729a7f5685ea823e87ffd68aff988f2b8ff8d52126ade4e6de7c68088f28ebd
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:fbf4e6f210ca31b8864f84731b5f5554fffc404d172c0207fb3d5c93b09c6c13
        - registry.redhat.io/rhel8/postgresql-13@sha256:a92a579f1aef66ac188d24fd489c456a1a3e311d95dcce652da6b81e28fbf725
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:3e80a493aac65370228ff32643e0fb8418f6fb576934e804fa1c65b38cc3d203
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:017455cc1c5ceaaa1034f197d0a98645aff6d83fc71a4a5cb9961c3f283dc239
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:e3a11aee5518641ad453ce310b159c52d827f443f99eb61a4f5427699c1ab16a
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:962780950d1ef7ebbf285ee7fc7c2d8fc9af1b9cbec6c29dffecc133c8933afd
        - registry.redhat.io/ubi8/openjdk-17@sha256:e8cc2e476282b75d89c73057bfa713db22d72bdb2808d62d981a84c33beb2575
        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-pipelines/pipelines-nop-rhel8@sha256:de0d59029c02e5e9e6d607375b9b0ab573807f6531128f13d2579067767e8a3a
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a27f43b86d2bc10c60de233be4e223b549d11c3aa7de390e485a79ac3fb4c533
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:945c1675422507e67eca06f246aca9e42aebcb2c874f74a284b5e5037f073082
        - registry.redhat.io/ubi8/openjdk-17@sha256:632e78989471859ca4ed1148b951a911f7e3b6e6516482be20967c4171612c55
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:ea97b4d3d0882e9a3f5a98c6af3c147fa96de92e40710edf380b58442d5a623c
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:9a230bc21f8ef9ad37398922498ace9e6b13f21adcde2b00f418543919a9fa11
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:752baa0d02ea097bab1d014b623b8161ae67317cf2f56d264bcd5d0a270b096b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:a1dfff15c9eed4dbefb484c76383073287de6f5429c878254d374a56ec7099ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:c2ca6ed42b7d7dc5d06be481e0f3b5da6c9219999a6f81401d434c0d1cbd9bdb
        - registry.redhat.io/rhel8/buildah@sha256:5c7cd7c9a3d49e8905fc98693f6da605aeafae36bde5622dc78e12f31db3cd59
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/rhel8/skopeo@sha256:1dcb4189c92da21ee58b3ca5433615e0208194c8412f7f1fb45fa491179aaf9b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:914fe1fa1d806cd31a755905ffaf0803995f494fcd86690bc9b487dcd2a5b6ca
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:9e9c168af3b24b4f084fecf3bbf07f66bce0fc717641ccaaf07496b0a8498925
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:8505951c0c40957eb65d551bc742e82642edf65385b6ca67bcf075036c42270d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:eedb4553f0be74f81910dbd1bebed0a4a07eaf4dc47ff0551a8ea52725127b6c
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:ab01a135f735a75b2b1efa184e1d205b60982c7a93ac48fb48b8eed66b54601a
        - registry.redhat.io/ubi8/ubi-minimal@sha256:a47c89f02b39a98290f88204ed3d162845db0a0c464b319c2596cfd1e94b444e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:fba741840f20e079c720d4bc4a1df64d78785798300d0958709732299ea321e5
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:a3dc7856ede01459cf74c9d17687c0c0ac5a404a6891266b12e19373218d728e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:42ab9dedc88f3892e0712e7868cd21fb62e955f442aad6e837638fd38dd916f0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:4037f8eea26c4a4827d127f99a40992109a19efae30ce9d14a75283d69efe919
        - registry.redhat.io/rhel8/postgresql-13@sha256:a308263f5d1071be8ac5c13fd84b40609988ca30ed56c22a8bc6769e107ce09b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:6b9964bd9be63c5e32d56cf7519c1b7eb65303e04bace7526873d4de73142eec
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:aeff39254bc40092974781fe847a295a1c60f226f3f9ae2b7f2cc9259229c3e2
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:6acc31f179b08658976cddcb9ef42f377edb29933d1d83a2ecebfd455bb68571
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:b6845e614c60e924061a52cdc091d0437a4dcd2d67d89158af2efdc930469b3a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:1658226f40a3f10d9f6c7776cba14a80644af4a56452d9617e85854daa671223
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:c701cca096953103ae21d8b0a4b76c39769f7458532fd868c798a5af2987439f
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:23eb0e3b25d61d0f4fabea8dd954bd3956e3b7fec634e32d00c6a108e88330f9
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:783174ac82d0d823f886d5fd1d89baf8cf467c13d651ee689a90a2c1c84c54b8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a6c5e95bf9b42ed8d6e20139499daf70a633ab35eb76cca3eda9fd380f396602
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:665f689731ca03f753c3c2dc4d4ae3f6bb001c498e54a6ef7b5d92ff00f2e0bd
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:fc935150749190a1a978b7b59769cfa2a9e50577064959ba619d601057bd3355
        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/rhel8/postgresql-13@sha256:757d8dd6f243717d820846da7144a49913f28f223b74ec305b2215f54720f8a0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:7c22937c957b4f405bc014f4b8210f88c1e5acbc7fb59a29c9ee8837d4e0249b
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:a4f1c5397fdedd9c820f51e0c09d6b464f2821740c86ab61772aed14cbb33ae8
        - 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/rhel8/buildah@sha256:6d2dcb651ba680cf4ec74331f8349dec43d071d420625a1703370acc8d984e9e
        - registry.redhat.io/ubi8/openjdk-17@sha256:e5fc9e34382da41b10d4ea566639d31707493abff9e8de81f5accfd66876409e
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:56337f8ceb6f2cce84090f9fee17bdc9eb87dc4e61c36c6353014c0f99cf6273
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:6fe1b45c6ee81bc55062ac6a6972accf5546c69f78db97f53c9b8975426c35eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:e784efdbe32daa310e7d3c7d4645613814573d12ee1dbbf74aad68cfa28761b5
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:bcdd6f5a185d4969def2f806403fcd08527bfcc9f4ac0706b38bc358d1d64778
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:aad40e98859844aedf0c719d7305baeb42c055872fb735c54c378edc014d6e31
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e9352d062e933f23277e81333b42fd86ee767e9fd273c8d4528ede410b6d7afb
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:fa2bec9b5cb68fccf9dd331881ff225abf6704973ee3b283e2b5f294aafe3ac2
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:b44ee90952a1556b9db646795d415d3cec2d1de7e01356438b53ba44c09988db
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:108160e0298da3379d4277cfa865c073c28fc3b25f5ba3155e427db5b50ebb46
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:0e4eb22c1f8e35014fac62a820895d6934312278d71a23bc8b4e1f5e200b6bd9
        - registry.redhat.io/ubi8/ubi-minimal@sha256:c12e67af6a7e15113d76bc72f10bef2045c026c71ec8b7124c8a075458188a83
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:58343c719d9c4d536424a55e280cc3f67c2bff6f0e0b1b56678f555d5c12f381
        - registry.redhat.io/rhel8/skopeo@sha256:7fd65200b4847fc84fba0466519b87f915e28c0e9bc90d3022beecfebffd4af8
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:de9337e8fa647d59727a7bc4477c613607975a493283037b5c81ec908da21902
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:ac3087bf9f4d494518fb19e3d95fe0f942fefa69ff9f8b2a82fe2d59c2bbfbf4
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:d2b4ad8837421df74485f6752832de75e6543940d8c32fa18811d7878cf4e7b8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a34bd66f9eb15cb09f7342d7561f23697039a8521fbe76d0f5104d19bed0a05a
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:934563cc735bc0c3421ce444efdcb3bbb38c1a42a2abcf49294af30e7f5cab8e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:115c28f9574540ec42be6e3afb93ea62f4d6e54c7367e86e746ace712548130e
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:245e5f77eef067b48f7262de04485b4ab5f195736dc128d2c574f32bb05d3b2d
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:bf9071d0e144632a0acd90ddb4d2e1ecd435e1904e22233a1e1978cbe3a0206b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:b614e12432bac989bf789ac84ec0a2bf55f5cab9ecd863432c7d11e4e176def0
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:cf4e3a23de646038e18a170f1edf49fa75bb72d49e9308511b680e24c795f1b0
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:d854cdf80b03566e138d1530e0200e7d9a349524d37ce0244f8ba97f6af3156e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:4cf8548faf20fa56d4ec698975bb90bed4474661170cc51b6892a144d0407497
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:8ba6e6deab70190b55ef2dda957a8df89e34bdb03f0671ff2f52c97c8da6081d
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:37109f6de75dda750496f6668164d0dceaf9db5278e8c034708436f39de3276e
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        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/rhel9/skopeo@sha256:d077e35100d6d7b3795f8e3594293dbf8b65c6bc18b909aa555fe56f048b356a
        - registry.redhat.io/rhel9/buildah@sha256:6886997da8c92214e99e3e8da47a0f08239172d2544b4edae058d5cb018effab
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:c20ab6fa719506bca942669ea84b113335b05df3ed275257b88be234cade7c8d
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3964c3248dfb1006ea9a46295baf7f8cfa71952d6b9863b52f87e8f3d7863b1e
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:fcd5fd10de7334bd59a8da4997f91008ced95c6cde40d56d50f3b3e32c0f19e1
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:0a60ce46c05256c74f770901e0bb79ad89e88ba882b643c1ff7b2a1738463acc
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d72842a7c6a1e50a68576c93f60047afec801cf83db64d7d3e34b25bf3c753ec
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:6abc903c784bb455e1f2fde45a48afe775239668e1d0dbc1b3cc6afca3c0b477
        - registry.redhat.io/rhel9/postgresql-13@sha256:ecd5a5583db922c517c735797db3fca587c0ef0b410e7dd494ace2267d89cf05
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:2ba6782af0d7e5c4d623de31814f43f4f7c3c38d09b57705021957d334067f87
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:8fec8e7a8b3e5182c67104de4e3abe32593b682c4a8986d1e9ab835dafb95ff4
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c90a9c3a20f088241980b76986ba4f43b0243fd6d94a826fa7b5888e01c13093
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:dbc462cb50385dec3a220b5d0caed0e0211c166182026f86e3c51a1351ba0de4
        - 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/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:96f5e1922fb9d6dc17e271576dda9bd032bd6dcc04e7496fb15a2f6b5871cd67
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:1b57b64657eca0002145100bae262a19f02eb40068e07994df467e28a1618f90
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:8ae0ca6411e4fcd5c0605344bc6930cf122ffd80e71199509d58423a8b41de1d
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:409c14649d8e7007d4b72b6feffb71dabd26322bf2a7c77f5307f2546fdfe81b
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:eaad37453a5ebef51c28d4a068f56e9f394e710c72bb86342cd2189001420836
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:b550a8bc2a87d07a5b22a3ec3fb83efd8eb26ca6e80d404f2e453cc9b8434da7
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:b9675b22bc8759903472c1eb0e03f90c75460f02799d894294c161641cad9414
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:e4d49cf6a2fb8b3585ecfe3b3da3e9de090fb99de3dee2da0601b1f6b071173c
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:e27a30d471dda4983a5b8192709d283a9d082558f3caf31b30db2214e418b017
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:36a4c6a3273f2371ab5e679f1955221c286ea753e29e6ab8da7c983681a68f02
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - 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/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:16d799503674641d4690822edc9c399c61429ccd31621d295eee4a4d1ef1c076
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:e63d956a0534f2e726301e00e877c4fe2f34ca4559e59d2df7567c04ded311a3
        - registry.redhat.io/ubi9/openjdk-17@sha256:5d619e202695acf76a5f32c07ace6709f5ee5d3999bf977e1bf95ad34197f44a
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:cd28c2c90dd340324b0d8709640cd7636f28286114b0023649b6e21be13e03c2
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:86ea94b12e8923035e3e4f39b6a53b3ab32c5f77d7eea170aa9b34aecc6f8577
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:776d34b0ea2e35c11ad4050e6b40cf4b40c84dbe0d5f3e6ad669c494a210ea8e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:e2b4c3b505c4b5aa36f8a5e661389b0de4e799c74c2c7f16a065e5522b438e89
        - registry.redhat.io/ubi9/ubi-minimal@sha256:ac61c96b93894b9169221e87718733354dd3765dd4a62b275893c7ff0d876869
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:fa5c456fc91319c55fac9a011dc7bb32ef85db293c73d74436e903b76ceb4349
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:80d441ec5d07c5059277a3a9173a35dfc0b8372d6e4d7823514131a94bae3fd7
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:8b4bf043e0fb237553503d63b129c432600bb4e65b2096b246b257b404b42be9
        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-pruner-controller-rhel9@sha256:cc5265e2e163446554453d4f5db1cc733758b450c7550db7b7caf9ede474aeca
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:a585790aa11f5152c8a55ef36f74f731a34b2eecccd3250e5ef3cec8ec398409
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:84450e886c5ce68f4f594982fab6140faebef5774339226b0be8d7e70b963fcf
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:ddbab8d6b9d1239451bf695276c8ddfe00e78cbb9ff4fc6562a9a5a2924b6082
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/rhel9/skopeo@sha256:993f799d58c48151ecae7a84e63860f6c0039e8e18efed5ad67e7752f4b7e408
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:cb5958fdc6661e23f9957d53877a6f401af5a2f64a1305ae21579048846f1f70
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:b49089d2f582a7a9b954a75a48c590849e79628305b37c43a0c5ff795019635b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:bb5bd9f505d0eb6ce6573b09898c2ad49f1d3602c36b380058b489d9383ba60d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:38a58fd012558192cd779ff8ac2ef3f02b8e82e2a1bcbbb9d53822c9d8890afd
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:95816d1f338341800c6947491d31d6ad826e56e821ad3ada78718df9f2dcd103
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:6a947bae0c64ffcf7c2f9d71b5f18d858e017ce6122b2499c555850fe7fe1fde
        - registry.redhat.io/rhel9/buildah@sha256:a6e04c061b8d261dba85d01dcb64d3f7dba8c0b9765e03f05ec79850a248d75a
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:aab3b001f60510c73cf475b2c218a7aa921cbca99b855d28862c42e83d610ab0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:67334d9a2a0bee4cfd62d3e3c26608df4f802adf8970981260e4051b4fb3d055
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:1fef4759b410625fc797a8ecd166c20ad09312abfccc1cb941e946cfdccd2da4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:7eaab4455c1e416e4e0ba5f3e0e60c5a46aea23a939968e15eb6a953680a5f2c
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:1141200c99c69bbfbce4f7994b7d8b9eca36f5cc395acdf866233b3cc35be61b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:d21cc7e094aa46ba7f6ea717a3d7927da489024a46a6c1224c0b3c5834dcb7a6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:a802bd8ea9104e77b6318bc3c05269c32c6435a696f62084da83f68b9426294a
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:4f606f7cb607007573f1023408329bdbfbfd979dc6bb50ac4af0ae20a33bcbee
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:a68bc519e86f1316bf2c536aab16ebfab329cb51b07cd02d3021bc8332c4c97c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:41d669fbe8bb48481890fb9fb52de9d4cac98cb74e6a6b284d046a8d21b06e58
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:f151dda38d7fafe2d72e2cb064d074921c6b535543f29cfcf66405ba65e38ed5
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:408a3bf7a43068cbf2ef9af04faf3df161ac39e53446f47d9fcd083499a9e2a5
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:66588ef48047d6589b7c810398ca16032125174d7cd9eaf1d6ddebbbf82147b4
        - registry.redhat.io/ubi9/ubi-minimal@sha256:14f14e03d68f7fd5f2b18a13478b6b127c341b346c86b6e0b886ed2b7573b8e0
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:e1b99c7a287125dc265c536e5aecbe9eb4e9981ff030d28b9b127fb546a45944
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:e74f92e066f47a3eab9467f2253c3b85bc34fa41e2443e033b5e3470849b0d16
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:49cb3cca3f9102384c96e93108d09969df22c3858b1933ecff9fbe1d41aed981
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:d49f6cfcd815f93d0f1fad8a569bc8e52ffd86ba909530e95fdee19b0a1ca784
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:6a18f8d771900aa480560d1809c789d5243c4f6d9087185c610d9b8834d78625
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:498238810108939ead8df1158c6ac892ad5f0bfad57fd2a893b5ce53853504d1
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3e2343b6121790f18b8d8868d8492af0b0541252f50e290f585f467c61660574
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:ae34ed4ead57a26e1f65dcf433908ad75c5bcc243fcb2fdc3b4c211171c40480
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:18bb4f4139d8b9f041ec5d38e5350d72290715f8ef235543365ca4b353bfa8c4
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:2d6640e6b91896ff455ab8e2246f166a3cdd9c53dfca00b3919f646f54a11f9f
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:5bfbde45a37d8b16cf0ab0be8f636c35a1d9041d6c8f7f611fc24a551eb890eb
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:40a099a9073bcc2f8da442d8225be03c8636e456c548c93e1a8366677e845830
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:655a73b61984fbafe9194629705f51ff149d43a768a5a1c103045582eba8f2ec
        - registry.redhat.io/ubi9/openjdk-17@sha256:cdbd64ba1b7826d09bc180fa19aa6fbc09ddb5bff5e02b7e1351353bbabebb78
        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-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - 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-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - 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/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - 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-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        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-local-storage-operator-bundle@sha256:7f14582c0d63f02a3ad9201d8c90c762de2f131d62ce3a3b201f7e8ffdfa3153
        - 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
        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-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:1d86075469312e84f3d16379efcd6130ec9e8b23a1343e3945f071d82beff6e3
        - registry.redhat.io/rhmtc/openshift-migration-velero-rhel8@sha256:07cafb83ba90378c1fa60338cf951a9d7145ec245710637e90fdb508875dcc45
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:a539064234088a4ee13b8a9666ca9507208fe38189ee9b8b673a38a58aa75599
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-gcp-rhel8@sha256:035855c3d4b32a29232846d73dc398e81f941fd90a03e33241ca06f6e80b2204
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:f86e96edb0418811df328debdee93b4a51cf7f651134ee35e9c50b9dbfc29fd8
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:31b3658dd79c18111c21e99aea52cc198f8e95b458a1a4f8d2bfc4d21e9bdacb
        - registry.redhat.io/rhmtc/openshift-velero-plugin-rhel8@sha256:92a3162c705537147005a065cdddbb410e1863d80c08d8b0f27b7ff5588500cd
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-microsoft-azure-rhel8@sha256:084f1e54ef0d7f457d5a7cfc57b567ad8d85237c12f707c82f7a30a54e3652ba
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:1b8008a16a0f53c09ecc5a219964194689a1aeb01acee8313aa49a9c26259429
        - 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-velero-plugin-for-aws-rhel8@sha256:c001dc96a1478a58f30461ab018e40bede13a78f3cdce869a70dcb8b9bba22b1
        - registry.redhat.io/rhmtc/openshift-migration-velero-restic-restore-helper-rhel8@sha256:b137e1345038c9e566767f24cce60c03ec278f5a2efc28fa08e0bd8bfa016486
        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-log-reader-rhel8@sha256:6d8c28c61ae5cfd2b870226f150248efa1f7ea4c538c5740587cf3f046ebd5d0
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:9b7b4fbde975ee49c20442b7b410b900f60aa2856856f89ba20d4700716bf49d
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:977e9f27271b53d72c53e38f44d01cb1fb7e8ce57ec715b8e7efa3ed66d91118
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-mtc-rhel8@sha256:93aeafa4df87367cc6326048489a0d7642b9ba13091c6ae4a3d04d45a7e6871c
        - registry.redhat.io/rhmtc/openshift-migration-openvpn-rhel8@sha256:ab050267fa89bdc400ea9ba8434acd11a0cced415e5d52512adc2db713bcdd2c
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:da5bea3530580d60fe593f03927ce2c561155fa914961aa4152fac8fde3b40a7
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:84492722125eab381eeed49aaed92b44c763b8f06cb2e2859031f486df4437de
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
        - 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-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/kube-descheduler-operator-bundle@sha256:c0ebb8c7fbaa325fef3d530da8bee7ea8773aa082c9b16f174c41ca4465ced24
        - registry.redhat.io/kube-descheduler-operator/descheduler-rhel9@sha256:e9019ca15608d3d48a68b97283ca07db1260bb92bd81a500f7d987a485cd7a1e
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
        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@sha256:ed68a0574ddeaf7d676403cd843f28cb586894f35dbb3ca5e06a5264bd42f030
        - registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c
        - registry.redhat.io/openshift4/compliance-openscap-rhel8@sha256:867c6d4205653d8a954d234cbaf470313009eb983d4f455fb45f49c4a7764422
        - registry.redhat.io/openshift4/compliance-rhel8-operator-metadata@sha256:1c06868bce1f5d7145ef658bfcc284c44011aa24a17166aa124547b38f2259e4
        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-selinuxd-rhel9@sha256:3278d69814a8d0d1e31dcdef454c24828aadbb468a3d5d3e15910c76481765bd
        - 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
        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-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
        - registry.redhat.io/costmanagement/costmanagement-metrics-operator-bundle@sha256:9cf11bd854c76e2b344c0072ae8487acde31f6fb50e2c47937f95186146f40e6
        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-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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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/ibm-bamoe/bamoe-kogito-rhel8-operator-bundle@sha256:e0e7fc3a69575199a6fcf93985451dd66a5eb7d1ab8caecf059d7d52f3953dc4
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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-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
    - 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-istio-csr-rhel9@sha256:9ea2c29a384b964cef14f853278821df3cd30320f25afab8823897192f67fc7e
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:cc20a2ab116597b080d303196825d7f5c81c6f30268f7866fb2911706efea210
        - 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
        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-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
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        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/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
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:0d2edaf37f5e25155f9a3086e81d40686b102a78c3ae35b07e0c5992d3a7fb40
        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/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
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:5eeb9f00760e286b2088fe4384bc0de5b18178fb3811796608ffe98d1100312e
        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/vector-rhel9@sha256:011570d92a596fd2895230b19bc34a25f8befabfed6b7ce2f1e2bbe211391d22
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:022747902d768b6bf95a76c7c0b3aa63af356566b8411448cf64f87fc31a4794
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:057e1b87e9b9419d35cff1ee0ee8e19bbf12e6ecf3ff014206b62ca44e70eb07
        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-rhel9@sha256:8d7407a15dee92f15e8c62ef8a23c02b94bc59d1dd6595f9dd3e05f5a01cf9a3
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-operator-bundle@sha256:bac746437332ab19a056edfc42148904de392c787a79dd77c2734b2dc34982d0
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
        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-metadata@sha256:87448055a162e215a4d4982a8494fec6e7cc59fe6704494ddfdcfea076a2100c
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
        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-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
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        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-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
        - 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
        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-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:088dde6eb9d239a7a34b6e47a1bc3c3f1f74aabe764744eb9554913181b4e0db
        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-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
        - 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.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-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
        - 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.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/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:a2e2211f218d13fea1c2bd232a87378f3d9f656839e48c72d93f4f8afc3ea702
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - 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-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        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/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - 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-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - 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/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:fb284b670f3c4c28ac3bcc6a16d20db5ec38165750baf6a03f1d3b7cc316027f
        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/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - 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-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:88d59edb37c5c1588e22623e1a0c8c2e8bd793c52f2f8fcbedf8d6c4697874e8
        - 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/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - 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/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - 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-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        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/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        - 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/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:e52d16eb8343528b0d92860486ca3944e6f49fc9d8a2057c247e387bc3685abe
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        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/jboss-webserver-5/jws5-operator-bundle@sha256:bbd477f0b3ea615bb0342a11656be719c61e1f9bccb3235e071d8590944334dd
        - registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - registry.redhat.io/insights-runtimes-tech-preview/runtimes-inventory-rhel8-operator@sha256:58e01d11c3d30abc5b0ee3795511bd04e39aea21e2853b4f4cc6d1c8a2bd7bb0
        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-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:0ee0bd2449f183277af845e312257b4a1ced4de865831b15e1758a397d8d29eb
        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-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-operator-bundle@sha256:fe40f5abedd62e8ac2a354ddc7e81e158615682c753ef942bca238dcc3beb4c7
        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-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:4478b8a78bdde23e0d40476f8ad9e4bf0628fba7603a390e8de7e6a319abc1ec
        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-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:8b475114a5f77f7c041509a30246769a5f9064510724c8fc99ac29164dc3a0bb
        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/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:73d91324ccc995e9a6db525f194bee340c17dd624ce520c767ea8fcf2346f786
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
        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-bundle@sha256:d29abe14abc67d8836cc6f7656556a0a7fa8f4a8eea3f78e40265b339e7430f5
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        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/quay/quay-bridge-operator-bundle@sha256:7cace73b03bb02202a04b6026eb9f7323610fd0ccd5ba18a6d00fd66577a96b4
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        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/
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/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/ibm-bamoe/bamoe-controller-rhel8@sha256:3fcd9ae0bc194c198cbb5ee94272e80f302658733e467766bd1789357e9fd015
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:a287a2fbaded371b8fcae5e4124b2d905bb228f94da0fc899ca2600b378dca0d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:98e9a6618558bc8a1b9cb91d1c9b3380968d335092f6e953d1abe6af96abf65c
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:6cd0f07856d612dca46b0a01a93b796f7a0f112b98cedfd6754f9fd770ee843d
        - registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:5ed8821328413ec11859ae317679f0692afff9945f134fc8909e07a3ac387794
        - registry.redhat.io/amq7/amq-broker@sha256:792c1cb19e62519cc47d834650fe5a6a6ca589a37d0b53d4f4549e80cabae3f9
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:efa55e17190b0ebe1618452f786876ef354b8fbec25c316aed7ed5bb1ce88116
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:25025e489c15108edffe5270d257e1ed9be0a67aa067bcfc184647793aac2617
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:fb326be806b337b0ae1711f974d15e073aebcbad77aaa1123a63cf4f331da5f2
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:191237ccffc476e764714a69e35d9421dcee5ddd7184442d7a8306a06b97e6bb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:457fc73423fa94591bc7e35729a25c58d3465583afccf342fb338b6e11188575
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:b3b7388b3b116ef37aabbb04b5d2c3e36e58d2fc95f1e59795b423010e071fc3
        - registry.redhat.io/openshift4/ose-cli@sha256:b2b93def4eb5edeccfa2d8ba22e493646325842674dff0446b45677bf641a342
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:01bf97beffb3647968aae052cdd401d6d562c35f3e78ac483dbf55c44a71dc2f
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:c9f08ddc6111cdd74faa0db5721d5730fc7716fccf4dc2a658595f7e0c184c10
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:82d8ebde7eb3ecfbf72e5b71e7e392d3a3597fc084b6cf35e8fec23bfe41210d
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:2f1a7519617b5c0d082f943de0db295370649d968d699d76cfd829f4c9826a0f
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:3fd45f2dabca7220772d823275a5697b42dd35f53c27671b093117933ef2d4f6
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:ef1d77bb085172f927ee53d1674c85e2acaf1f580d7cad55bae8bf2c33c49c01
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:c3553707936cb9eee8a6a622643f72c91e1b0c11add5ec9ad5865242a9e133b4
        - registry.redhat.io/jboss-datagrid-7/datagrid73-openshift@sha256:4056b1cf8ff5995f56eecfdc087d9ece56a216dba6bd73acc5693f0778e8d573
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:f714b9c1555e7f27a3c9cf2cf687a74188f36b1283d4e09cec4db3c084d9fe64
        - registry.redhat.io/ibm-bamoe/bamoe-operator-bundle@sha256:54df7eba0292459c0491ba39c15bfcf793e1c0aef042a4b3f6c587b0d45f77af
        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-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        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-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        - 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
        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-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        - 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
        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-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        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-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - 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
        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-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.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/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        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/tuffer-rhel9@sha256:775b261b8f258b369213246f2da5c91218678acb5e3b8bb4670b143f487767af
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:571c48ecb2658ce70199c06dc483ea48a16e032a764a6830388ad845f508d981
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:796860a3e85712c60398c36983e0ff4d45325c7a4de869da2ebf1b6ba4b19825
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:7ce611aefdfedd8b2a633def482cf41f390c95b8f8c800b6163a585f117a9e2e
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:6131053778ea04e437f3005f90d1138aa11ebc58e3a9295e2a8d8ef6713a52be
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:3b8f49c41df15022f8ffdf3a8f8605b14c14f4e10eae754a06a86b6585d158b3
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:5a752cefdaf28bfc53847185cdd5fef1ee47e3dcff8472f8a8bf7bbdc224ef57
        - registry.redhat.io/ubi9/httpd-24@sha256:366cc5bc3b96069fecaa0abeb9d3510c507e69a20de1d205d881da8ae8561ab4
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:329a0dad7842d4ef60430b0e3f188231bea9e579427443ecd42eb62a5c282266
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:603a2ffa54df0bd45ff42ac710dd16331560eda2be93442232b045c959773c4d
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:76c24a38ac89ed632d38e44049f37e4997abfa27fa8cadbb8afb42575031296f
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:75f1049431f9e92898a4217870309cbbb3b39c8362e929c0bad3b53cad4459db
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1f5a30a285a16635a7234c3c1763dfb385c8bffd605fc862b782bdb5c6c61ea3
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:09b8259ec9e982a33bde84c7c901ad70c79f3e5f6dd7880b1b1e573dafcbd56c
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:dc994a95be22b0f4bab022fc362c4f44c6a7d1887a2eb0d04870d75654ec013b
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:540556453c98db3919e5f305a99c699e767e2891a95fe7527ace578f3c67a308
        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/timestamp-authority-rhel9@sha256:531603563c69aac6905cd6b8157d30781040527404ac2313acba5a9310e0b713
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:640633823a54c11fe2a8b3d05e571399fda415b6f0b3adf1ba9806882a94bdd4
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:6270ba29adf779de5d3916d5e82f1cd9491ba89d4ae2042347b6ad6d1819dd26
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:eb38e98dbb9828fe033a5388609132f7246fe77d2f4d258d015a94ea30752b24
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:7c4e739622f68cd924afcb41cc788cdadc34c725283a097e564d620f39637bac
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:a93df3206409de75613d398e7dcd8b30ff7cc36eb00349c435784f73f00a2335
        - registry.redhat.io/ubi9/httpd-24@sha256:badeee0aa3477e61de64f6a2b93e8a3673edd38fc860125f7536506f3d592132
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:030986ea26f33db3a192c67a93cd2bde352f23c68a17b062fc062955675c3c51
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:1c2201d50469d70ec6e21546c7c74bd52251d420dc1dcfa5375c1cf61dd3a9fd
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:12b438ea70f83ee6edb12c96b507f92510f4afba824eac34c8f50793c4199db6
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:fc018a45b7eb48690c46c83f52cac55fa40089e6b02686bc21265dc7c2205b8f
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1d782a127d2f8bdab633f287cb2df2e400ae91bf5d4b913473539d8512dfaab6
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:09b4aeeb607c88c72f69e6f87cb840c82ef5752c64a58fa13551db749fac2530
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:02fbd4772c185edf38fcee4e5c5e1c9dad82b77c9da824addaebc445b67d35ac
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:fe31830df2d99359749cb86cd1ac2f32fcc3de07aae427d2f2cd3998d31d2833
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:c22cdb9a17f85e13c00412cba83aa644e90a0faea0236029d0f1c53fe212e227
        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/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        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-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - 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/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        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-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - 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-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - 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/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        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/lighthouse-agent-rhel9@sha256:5ee9a8aff7bd566cc4633c5191c40d7370349abdbfe19ac6e0588956f879c0c8
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:cd29afa47105e0b49b0f640651c16a73d1190c84fb28aa6feee75d5e89b40b2c
        - 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
        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-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
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:a66dd030eb99207b6aaacc6b7c7cb5182901da836ebf50373c14f8e5ecb7b642
        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-hub-rhel8@sha256:32624f2bddfe8b6b9c6c1c3f2be541c8c61be29680d13b6d446e8874bdf8e219
        - registry.redhat.io/mta/mta-operator-bundle@sha256:f3d585e24d65905b2e9f594dcdb67721aa95057ab7587ae531c3487aa2f94e53
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:1df881da1e20c2501caf53e1cf59b6b366281d842f0948ca5f91694ec1db829d
        - 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
        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-pathfinder-rhel9@sha256:a2a8b6d204d99494a6a005e8cb1fbd92afdc84dc01e4c1de4ad7d8798bd83741
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:c35f3ed429a7d351cb8c2d07600b4ad35615a5ba08e5cc9f8b9bd504aea3f7ee
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:e59725832547e80cab58077a1b6e42c313a4057621defa841f35c0a7627f149d
        - registry.redhat.io/mta/mta-operator-bundle@sha256:a13643117c2867351718a872f7f1b2350c67855ca73a727a1dc140754ffe6589
        - 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
        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/openshift4/ose-oauth-proxy@sha256:af879d8b9b5e396a5308fb675a1d6dba6d70151b9bdbe7829362e081a6adab1c
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:0e1ec99af5666a060176adc52612f20209e3398a9a5a2aa1dcff11ef260b2006
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:1b5e016046d93b6a2674d63f08e0a46f8050e785bd58fd94ba7a70487efe7e2a
        - registry.redhat.io/mta/mta-analyzer-lsp-rhel9@sha256:0c8f59f35a950ea8b45f16cf71362128ccc335b58a996a099384fd737dd6ff90
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:18c611415589a093e16e9c2f2fba9f3c83d9514f79c8e4fde9704ef0679ea4d5
        - registry.redhat.io/mta/mta-operator-bundle@sha256:9eeb43af2bcab84f5261d1575f7c897903a7696dba011d256abffa1fe850eba2
        - registry.redhat.io/rhel8/postgresql-12@sha256:da619f6617d99790b4fe00fdb23ab4aea0cdb0592590162d51b3ef94aca01a7b
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:d554cc36748fc05e30eb10e6fe816ff6aab2fe07b61cc60e9d93de5c3cf17748
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
        - registry.redhat.io/mta/mta-windup-shim-rhel9@sha256:e2ea89055936d7ad229b5e890c6ba234c6cb22d8b688515ed4d6a34848efea83
        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/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:ee2c8ce2af0be097353758d9ee7eaa7e6b3fcd5f2bf5e04280e450e2b619d2d8
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:16cb28d683159ba71a5d7c233404ac1d6b7a07a374b46d24effe551a13a596c3
        - registry.redhat.io/rhel8/postgresql-15@sha256:16faf1ee82382263408f713ee4002f47ff13c82d4545e8a69d5b0ebd1d289330
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:30a3b1d5a70dec74a9253ca34f18bd8f2cdfaa68b85b0b25dc395158c2596330
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:23c97ac122eb7cd1e953df8da968da420f6db8708baf772759517aca4929748b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - 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-generic-external-provider-rhel9@sha256:4ad19b50cdd6be21e010155f2026abf0dc865e72aac1353e35bbb5eeb8320a4e
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ac38f1c3d34bc718928eb20743835c99783d846f63a3197d13839ea22f1634c8
        - registry.redhat.io/mta/mta-operator-bundle@sha256:6aef520983fe01351886e108d32b998b20e74116fc0280c754a914bfad03d0bf
        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-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/mta/mta-discovery-addon-rhel9@sha256:2dfc51d5398a90e73273b3e332f70d7ed94bac05e12b142fba22104ecc929436
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:c0643c05833dd1b70ed361bf56c46f56ed6536aac3106b92f0d85b83da1b9d15
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:70ff3b5e429a8fe0c68752ee05c47ead885b59bf9c8d7235337801270e7fc1de
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:4cde2c2df482293bd4d6b86a344336e13d2f9f81b29323698f603e656b14b190
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:b10fdc78c6f453a34a3d306313dc29fcb3152688a6a1d54cd236d00d9fab88af
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:9d6c02f6463771e747a30126de95fc0728fd95fff4ddfa6c70d828c55e0b6790
        - registry.redhat.io/rhel8/postgresql-15@sha256:dd4aec2775da1cf187c0839384cb16d69268e9781d4330874bbc865f98153a7a
        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-dotnet-external-provider-rhel9@sha256:9748d954ad8654ac203257286497ccf19cfdfa211fee40449cbe732ff48c1176
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:8ca00460b2fb64583a247f5b906c19743b7732b60ff8215f1baec12a766c61d1
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
        - registry.redhat.io/rhel8/postgresql-15@sha256:854710b428c4c1132c448cbe9ad30087a8a4b3c33ae9c0c3a4de21a15c0ae642
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ef57a58e609e244333d35681a164a1d3bf382c0eee37d33c993b018439814198
        - 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-operator-bundle@sha256:68953a2a721309fd103e09f3171d0c9d50020413631b575f1a44602a5d2ac855
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:6118c1db15667851f26eb2acf6060e045ed9065459e3e649bbdd0e2625d825bd
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:80aa13813fe121da49e166d81d09d63749393f3375c3b96d762d0b09c6685ca9
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:a93cbb575ff59bc8015602165645204b9ca56e327308b11a3d75b651701db875
        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-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:229197ca303eb3bd553accde1c29546916b128ffc7e43961b520c8e375e07c84
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:fda12c5ebf9de14d17d5d49239cee9815352f6d7e75926f7226d9f5bb0356909
        - registry.redhat.io/mta/mta-platform-addon-rhel9@sha256:a288d5a156006695854c2e76d09dfe356a31136efb72ba4f85f24940a5aac32f
        - 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-java-external-provider-rhel9@sha256:8d152829867909dfc98853a837ab50dbe4f09a331718010e15961e5468fc3db3
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:acff26b2dc0151443b592c71065c271a2f044c985f32365b093685c5e224f3c7
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c97afda6c66fd862738961abd73471f1ef4546eeb2157f13da264205d25e3455
        - registry.redhat.io/mta/mta-operator-bundle@sha256:75127a29a68c19490c96b4dde9146500c38b640f4ddc1bfcb2183372f3c4ce50
        - registry.redhat.io/mta/mta-solution-server-rhel9@sha256:08161faacb63d0842e8dc4abae5922fa84c4c10dede31bbebd2f7485884644fe
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhel8/postgresql-15@sha256:68fc74033591a7c7608adb438a81ffdf232f199adbc7c92df286097debd815d0
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:95393ff3b7f90c2077947d46e539eefa4305d01679cab40cdc27b4a4404256d9
        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-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
        - 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
        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/traefik-rhel9@sha256:7bd1c5582082949142aead1db07b45d41840c58c14ddf18b062df45283e1a316
        - registry.redhat.io/devspaces/devspaces-operator-bundle@sha256:74b83b79cba88af0545e7fb52dd70df2c1b96cf23b8963517fc779fbfe3e9aac
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:d26a9f4fd48c83bd488ebb889ccec7d65f3bd49e2c94e57c98971a3594d90612
        - registry.redhat.io/devspaces/code-sshd-rhel9@sha256:938dfb964aaae293190273034af8b09c5a007d614afa09b735756f930b34666f
        - registry.redhat.io/devspaces/dashboard-rhel9@sha256:09607fdeaf2567659a10148c50b19ac265b4a548278b800682ced9d975377cb4
        - registry.redhat.io/devspaces/pluginregistry-rhel9@sha256:572df83aa7e8ac0c198731ece8dd321bede3848fa1e6f2e3dc7bdfc5f8942759
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:af847bf3d0220392de2f8d56fc3d431add3b31986f8200a4758d287b5bd7a6fe
        - registry.redhat.io/devspaces/configbump-rhel9@sha256:7f33a59aa8d1820f8a99ed20eb4b7192c1fb57414a8bc83f5432b8ea2363bb0f
        - registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
        - registry.redhat.io/devspaces/jetbrains-ide-rhel9@sha256:b6e79f77712ede50d385d477b1d09a34ec4aee074785d385556a12a0a596e582
        - registry.redhat.io/devspaces/udi-rhel9@sha256:bb5baa05f316944ca6df56ad718c368b248e8f4b2488551549b1b13c4ed5844b
        - registry.redhat.io/devspaces/code-rhel9@sha256:7b68bf06abf4f2b948d21ffa82401b44f26965b093e4875653344ae2b7fe46c8
        - registry.redhat.io/devspaces/server-rhel9@sha256:fccbb4185e7694f8c53c994b04e140306a72ed8aa5a6befa7f0690f21e4c19dc
        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-jobs-service-ephemeral-rhel9@sha256:b9522442546f5daf0d2481794e9a565fa08c6db9b6db1f9e8c2a7824b2562e33
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel9@sha256:10503b5a1f1629df1ee61d9009e720f625c05df515078157ba5ed683c1308012
        - 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-data-index-postgresql-rhel9@sha256:071078f5f5963fb07d0b161fa925c4681045229778cc911800a54529a14b3797
        - registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel9@sha256:6818e069bf9ab89cddd5cea1c2e93c6dd1707c479cc21f116e33d8e6db345ad8
        - 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/openshift-serverless-1/logic-swf-builder-rhel9@sha256:37490d642d03a627f434d806fffae5b0e1245a4fe0d5fee6b13bfff162314af1
        - registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel9@sha256:e51b77bde368c4d34b9e1536677c1bd02182c2d6ee3a999d63f213c6853510ea
        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-operator-bundle@sha256:f2270236ca0f96bac3d2f616b349b3b5d44ffa3889fa91838508be3d9b58fe3b
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
        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/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:32cd9b5812506656ff9ff1c2c9fdacde44f179313ea2bfbbc18564fee635ca67
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        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/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: 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-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
        - registry.redhat.io/rhosdt/opentelemetry-target-allocator-rhel8@sha256:fd3fde1995d4271f5e4c36093839c369f403211b3fe9d3a4e09906efe8d000d7
        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@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        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/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
        - registry.redhat.io/edo/external-dns-rhel8@sha256:17f4127cbb9a9304769e9655c19cbea2260107c7e9371a99a9aa3e85d759c00b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:0a86a1808d9906eb57886d3d3cd5c04cf9578a80860342132d36ecfc411bf807
        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@sha256:6263a78b2a170e56dfca2173f14dbf14f0a5bddb6ea600bfdef248c7d5f20e4b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e33874a51971a90917cf437fc6cbeea1da569ba07217f66f1bba96d594f58aed
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:a614ec94c2468e34e129e9ecd4bc0d1895eb67b96e77eb5ad94cd8bd507860f5
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
        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-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        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-operator-bundle@sha256:c39816efcfdf1566636ab39ebdeb6c2c26c6d3a16a050eb2364548a555cb62b6
        - 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
        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-framework-addon-rhel9@sha256:f60071d35949e2e53cb0b8eec84f7d5c1e24bfd5f3165b34707059b61bb98cb0
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:6c369fa856f18ef60d25a57f0588ec5a0bef18d0226b957db5e5d597fa5158f7
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:d31e3e2b0126f94f12f9eb0af37c8bc08ccdeea06b61068a04d711cbfd9e3b99
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:0bb769131d07651f425b823e759746ea9d9af1e1006d610341f4e49188450f2d
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:7ca1b3ffb295e55b4b6d08ffad5d5a982c8e9d8ce7638eb956ea877580a57975
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:a74270d8ec7d1d64c86e80fd2c67d8dc8bb0a31b30b996de737491e3c7180e46
        - registry.redhat.io/rhacm2/console-rhel9@sha256:94cfe0cdb4c01ff7ad602bf0ee6af3010e5b748363845d2205070764dcbb2eb2
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:b42323be8ff41fa98332a5b2fa31af73a0da9605ff746122420ac46aa8f4a8d2
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:cce2e0c3e48140e70a389821f4238e53ea496473d3ccd74b045059bc3cfd2982
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:dd4a7678648872ea4294b867cdc7bca0ac063b81eaeac9bf5d4fddcaffb96bac
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:f99086a8e828f25d96249048905743ccd5a21f184b21fca62d01650c898a346f
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:7f86f9a33460384c60e62813e665b89bb6288aa3a4d56ca09040063d7b02b9bc
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:4628b05c002b6186d07f1bd6bd670bc2f65254168532d868282589b1da48e930
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:b297b4deda5906897b8d1949ddbabb6fb90224244ff2b6d86139110ac900fd9b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:467557f453bde3feaa0129f38c52fba00c3b98acddbf8978bf21ef13a9890fab
        - registry.redhat.io/rhel9/memcached@sha256:42a0c2506b38ce9f5ee744a299cb135781186e628fdf7c09d2d35ba3b6decef8
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:1b1f6f85af0910f1acd029f54a608b25d3a2977c3d8b323266391543324305b4
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:bf26f5a794224b5ac6b5a7c7457f345914612610d24e9af563b92eecea614eba
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:91e009061d720b1d1e5a6deafe295fa4dd7d7dd0c6fe17587639a623ca07159a
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:a72ceef5e2f992ef6d593978623be5fb15a10f1a5276a3bdba0364d26aaaa0fa
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:e20ce08100730812c47977fd754c53d3bc47ce13f57c0716b3f6487fba939c8f
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:973f4e668937fa9faee550fdf8451c74354f48756c54471f5f1a63307e4e5a66
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:4c09ad98d2cd3a41f5f437ee7023137ca57084430e00fb44e976a7a687dfadf9
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:afa4337370e8ea6da0e25d62c7197157b85281916a1fff4c881eafaf14a2c3e8
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c13557b24b0a172deac742cbc4b6dc6b09090170c0c0a4a9c0dd307a00c54661
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:ac64da0f40dc39078e7cf604293471e20ca627e90c381826f1f10136c21ac1a2
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c3d261bd2eb4842c279a0d35c754699a484ebb320617a893195088579a46fec9
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:940c0564ced75b7912d3ffc923a1f6bab9aed0f4a52962f7f894d08937b7d37e
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:7a5f323bada97dbe0ad204a64f714c0acf37e9d261776a24f0cc7e0122327354
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:2233fe74d4d9cbd226e130b314a546d5473515e0389cd19c25164c6c543aa54a
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:6cc12edafea8f130331797349cc9f1c06853cef5ee0a238d20205894a77aec96
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:0e137637b57c5c77087f3f0cf81d22c2eb9ecfd60ba96c90ff1e363d2650cf84
        - registry.redhat.io/rhel8/postgresql-16@sha256:776f420f734f9c1d6e0589fc6d9acee8f1c2bfd1f838348360bb9db584920602
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:f84cad07033b005bed36048f3e4bb00a613800cffd3d3892bfb1e3ccea2a1c58
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:d28520c44b861c75d1de8544be8b3a8659cb5695c0ea0e7b4ea3a9adfaa26748
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:c05ba064ebaad51a625361ceecf30b6d4bd28f3c5d9efb279f39c98afc050a75
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:ee59f307e468e2b7b38f7c040898d587d441f8fb3d59cb022ae23e4717739e3f
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:f6511171c82d52fef18533eee1d6511f3850c5cf4eda2bd9007a7a8642d0a1c8
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:3491ec932d90112e89f3a4cebe5bdd9ed6a7811f116df43bab8bb5f827129361
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:b8f8f931f498855461ff997f73470fd957a5f32719a62c993f07050e75d76bfe
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:a89c3f88ab17823607e3c6af022991263b418b38d667507d4c522acd590680b3
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:e53522a9ce0e3adfabdd809125a442b550c11c4c753d9665794c8ff640b86895
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:97049a14110198594e3ae815748111262359970937bcd6a83d9c98a70bbd134a
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:dec26e10f2c5c0da5a3d2be3d22255c08c55c3afcd9c9c34f53b29330f74efcb
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:393c385c8d4424539cd95b9fab090f3015e0812a3688beee83c2c515f1235f24
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:3cdc71fc6932406fb44dc0d162826713a515d7b032ddb8fec5582bfa9a9cb937
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:39b5feb4dcf91feb124adfb629c14ec729f96860c6c16e8a2c05b6b2348a6b6c
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:f930cda4750df9922781fd8fff84b9f4df219679cd2929e58961c9371dc2c5a1
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:c058a4198b256d998f85bd8ee07882f42628748d827bd978d4a70af05d411665
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:17b7618bd0d09665c97a9ad835ea6389ac4d1540f3675f6a34851916fc19b923
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:973eb3ca3da32c87ba308928a21fbd25514b2f6a6662300d4928479cb554cff3
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:57f28e416e9d84a9d690b6d262a4263d8da060a3254253c68aa7945414f15535
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:b83f150ab2dd851e3662ad01f3057482e5f454e28d04d50ce1c321efa2090f33
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:0684f07fdb2f648182a8410722156decef4ee503cb1eb66274af32d946bd8d80
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/rhel9/redis-7@sha256:b4f58ad83ab8719a2e102f38ee526546cd1d56428901afc3add45c9a0e2a2f12
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:5a86ed779e8a9f68f121029ea7fd21c37a4108ab3202b35dbb371a2b0612f215
        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/rhem/flightctl-alert-exporter-rhel9@sha256:2a1f1cf703782cc0cb07a8c6f950eadf209f47baf1186a2045210eda6b6d8246
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:490ad6fd2150a463cc7783342ad8ffdd5753af9c76cf27dd3266364439e2b6ab
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:4512e39b757445f9d3d523f121319620208bf81642f39006fe491cb37028a429
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:1621430aed061d140280a41bca527d616b4801f6dec9684792e7372a75fd778e
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:d589008f69fdc4738b2384d1098de2beeb7b7d2ee3dd64309d4f10308ab40afa
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:0e09bf9106e6937212b83c989657f8984547c81b272990cfe6b71158b8966a03
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:e27e5adc9169479aacc701677c740bb21c12a81d0df4a55442605d3dceffa91b
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:ad8ee7504e9d69edace4de3b119cdde99885677bebdbf0a6c11d3e62d92d1aec
        - registry.redhat.io/ubi9/ubi-minimal@sha256:34880b64c07f28f64d95737f82f891516de9a3b43583f39970f7bf8e4cfa48b7
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c1a264cc0484c6f58dd9915cb6575605ca3d6b1c2dc20a4841fc7afd906a8833
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:833837b3f89a4c9f8925e32c7550418169a839ce14b12915d85de6af095d5847
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:296062e27abf3c960f042757bcdcca3169d9e318627d2fcd94ff6fcfa72ae2f5
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:e25d8d0deab4139ba82e64666074e51b4d9c768f4e5e377483bf1d787613d33c
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:91f98eefba17fb0766eb3d6b94e7cd276a1ee5baf6c39c153929b4704b3c3b91
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:265e3de1cb6b823d2165a109dfb2fae4c7647ae543c920fe66d566698d851360
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:6b57bada2bce96583d5f80ae4bbcf4cdb54fcd1a214e75433e56d626e4a7f0bf
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:78c00553182db4b8d923c33afcf64617499cb5c701314a4c977673613b8fa5a6
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:de5f2b08ea7f938bdb8764bec1401d6ee55298754f91e912e14fc2faa0bf0796
        - registry.redhat.io/rhacm2/multicluster-role-assignment-rhel9@sha256:203cc1df7f09512c1578867722c61fcb90518c19d612e9a89b7b626db2805ea9
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:5bf5ff559fd9f0c06995237cc235d0939b44c023612e0179a9bc8de99cf185e5
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c5bc42e57f4bae70f1e0b2fd1de345d0f1ef7e1e41fa6cd790198bcd2023bc1a
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:cbd55d9bfd2056b3916581e51e547225b5b007c266c670844fc0881ed2cc67de
        - registry.redhat.io/rhel9/redis-7@sha256:bbce339dd580334f0e1019a31d97b053796bd16bdee79745a3102a22ce2983b0
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:b70ed3f5e36043f6050d6d71455acbf0ac9f6968a26579abbe20e47b71e91203
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:90b919807421554282a06cbb5d2e4b4b376b686a884e62566fbf257351f5a31f
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:a4bd68cf7b12b5f9b133983c988bd668f1dcddfd090b9912ee3d069d2f9d7517
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:fa26debe735df99a87997ef107ea56b7edf94168b98bd02bfe146f593c3e58c9
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:7a050603905f8cd0a5545b87475f077ff5639cff3c1c72eba0e6c9adfa1136e2
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:b541e86af7b6b458c58755f092147868164c2cbf0b239239d8331876fb6996b9
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:2b2a285276dcbce1863b2bf535042d3a4cd394f11cf73adc451226e53af54ad9
        - registry.redhat.io/rhacm2/console-rhel9@sha256:f96a68657bd4eef8c0fb1c9d86203e73fecfea62b4f87425caa1e5f65173c0b7
        - registry.redhat.io/rhel9/memcached@sha256:14568dc13790fa3d8827e3ae7ef7bae37096ef32b8a158310b3e489bca5a0ab3
        - registry.redhat.io/rhacm2/mtv-integrations-rhel9@sha256:4508924c255a6f352c3868b281c7e8eb19a6d857e32fa5f59d925875384549e7
        - registry.redhat.io/rhel8/postgresql-16@sha256:d64b9dff3ebf4a277080adf043d4ad56efc7b14a646f0ea72b911f58e28d50cf
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:c0fc3b0eeda8340f8ca684c215333c50d7896e861b6f899d4c93317c90f21d65
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:2c8f89fa9958f0422c6ce6a1acf6e6343967c78d0966937fca19e27e52e7a428
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:d8645f5266b1cadb7fc8139ae1c8e77732cbbe0642f52547df536e9fbcecc03a
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:19630eb9d520219cb515c2da23090efba4a15f3bdc6539af695c5b546c35d61e
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:4228de3d4a7d2240e13cfbb9132f75792a9c4b86e494fb3bb0ed53f6df267573
        - registry.redhat.io/rhem/flightctl-db-setup-rhel9@sha256:2aab6e480a201e202dd7f670caa27838db2c219e08c2726cbea5e7885091d639
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:eac5ade5fc49b724ef33c05c81bf960f7bec3f52faa2e44db249d05bcc45c280
        - registry.redhat.io/rhem/flightctl-alertmanager-proxy-rhel9@sha256:1d59b2cdbc4824ae2a8c1b32e7beae87331b410bb1f24c5216efd2629dd08a86
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:a7b322fe65406009776e894d98055e848abe38f3c6e4c5ec7abb40321c066ff6
        - registry.redhat.io/rhem/flightctl-userinfo-proxy-rhel9@sha256:357ce9e08c63c1f91512dcf01fc1073d3d44222ac1d97306709467282e4db9fa
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:9d486e0652b865d109c8fd7592ae96b43c1bfcda6ce154c11d6b91fbc15eb293
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:1c73ab166a99713bb9a7e17d347150213399740849524dc0a9471804c1a80d61
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:a88b2a9ec0b88483294f01848cd35548d82607c8b76ec4f24ad87271b5d7d56e
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:0ef909e3fa2bd636c2c727bb86ae86904af4eafa77ef533359c52727567e0c4e
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:3ea6921965c3f90b02a8e71287159f0771cc9fb5bbd37ab8c594df235e79d9fc
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:e1bc46429dc2da167e27400cce84af2082be150f577b37f98912371b6d684bbc
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:259bda37cfa2785051894838cf660a22564a36739eed7f25952703bf193c27fd
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:5f1fc557bef7e06ad285e94e20e4c1bb4f2b8b31c6239d195fd93ff02a530f9c
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:029a326a842d7645fc944b177234053e416517747ac6a6753675555adf2af328
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e2681bce57dc9c15701f5591532c2dfe8f19778606661339553a28dc003dbca5
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:ad124178d2f0d7e4184a1c18445a916e289629b382d0ed9fceb76ab8eeaeb6fd
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:1054b185a0118a9752c18ee6036c486f84d824366ed879d2ab4594c542219099
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:3329ee154252a8aa0f6208a59d21fd93198c01b42a1022a7310796ece8eeed0d
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:e30dc28359ddb8fe2ddaa55e43e69cafed9ffe3a64fecebcb03a850a64fe2c59
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:22a6b529dbf9aa27d15f3260bcc6acc1300bb6ac9ad60f47fcc115f24a5b832b
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:4f78bd465a4892788b85f2817c4e950d98fede462a2cc6725546bedc68683281
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:f22a55f1a6c720d83532a5af45e7aeb1593163f0e467290d2ffadbf4bb8b10cc
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:435b0f0df603380649b287ec8e0be94905501badbbaa24ae99450fb9c3f20378
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:79c843df370a7ff57d1f9fbba162c252729b7de331d88fb1679b54544cc7caac
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:34e66dd3f7dbc4760c8c6d3c9feae7bed6ff3357c8ee5a1d16e058bd496f7188
        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-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9@sha256:688729db8a70fa8e3a37a1a00f62dad124b6b6f9c90e46503873bbf40a066225
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-operator-bundle@sha256:c5f8be89116c08822005cd5026a7fa5b9c6ccf706a076ff6b0a3bd3c1991102c
        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-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-webhook-rhel9@sha256:6b23062ab592c3776ff7207ce7caed878474566033e45e377a893c4bac01de82
        - registry.redhat.io/openshift4/ose-sriov-rdma-cni-rhel9@sha256:276e01d4ce0e9407f5f67e015af36ec552f61303fbb7b2d45de5beacdc417937
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin-rhel9@sha256:6508614560de3d333fe93d7c72e6b6a1fffb4b5fd75632bf74fc686eb9deaf80
        - registry.redhat.io/openshift4/sriov-cni-rhel9@sha256:6a3b0070b671a818f094f78073279669c9646ebdc668f7099e44d007380b6060
        - registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
        - registry.redhat.io/openshift4/ose-sriov-network-operator-bundle@sha256:b85986a39227398c90a8f178da7859900b5eb09e5e77949ca698e8a675904195
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-sriov-dp-admission-controller-rhel9@sha256:f14abff38a42cb72299e58b957c6f0f09af5182208800a4a6ed55e57e4ab5f28
        - registry.redhat.io/openshift4/ose-sriov-network-metrics-exporter-rhel9@sha256:41b94f5b270e5d57b2130de47b0fa25796bfcf64c4dc771058ca0cd433404c05
        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-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:8ae52c3487c3eff996800be4321ef5cd594a6a451c2cfe9ed283c862e9fa5703
        - 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-virt-v2v-rhel10@sha256:3d927816fbd65ad819444432c6d80907143944e0fba525826edc10c8ca568849
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:8bde2126f5f8a6e1ca6b84c559c83771c8580fae0fca338219e94cba3e908e29
        - registry.redhat.io/migration-toolkit-virtualization/mtv-cli-download-rhel9@sha256:220639596f63897fecdb261d9faa7a8f6c1b1b9661c26e449336e3e19585d8f9
        - 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-controller-rhel9@sha256:2cbcb294f707d4832de3436df5cb35b442f8db69d24f3fb7c66ca7c2579e7930
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:7b5871df7274de2dd7df16f311fe97b8873b88032571d83216d6e61820aa288f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:4417efc0a042ab078138d5a83eb1b32e7f1d6ad90f69efdab40ed43c01d1fe30
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:018f9305c10388d368b8a29ef6a827494492df23a3279265ff3e41971e1dda43
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fe352650a328af67ba8cb331bafb320f0f147fe8a41782311206b8a6f0255552
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-proxy-rhel9@sha256:d990f6ddd51e468aeef329fe6c0c083ad524e6b72d8dc4ff8fcfe4cea4d16156
        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-rhv-populator-rhel8@sha256:e91c2e5473f3e24c185dd25e9843f333e6d7419d9c5f4d4396669717b5969683
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:c543dbbb66fcac02345e1d3c12333780721bf049dca0f0a27d4c55b15a5d3e14
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:4bea07e101740afc36a1617363a79b1c474efcacd584f6e475a53b3f2395a079
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:a65780c5680a6fbbd0e3d0eed423b14a9c9b3d7d17f801c1eb6eb6b777384ca5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fd6fb83bbeb9010f7e91f0afc91beac0bf38cb79c2de8f533a2bd07b1b238262
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:365115407964d182de7e7564438c6fd089e2c0bcc0f94ec48621ca0cc2bf0fe4
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:936fd68d7659683de7789fcf34d2e5873bd4bd1534c01c2d80501647f7c3c442
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:6d0aeffbccaf9df83b42c530bf82707aa7c1cc16f72a5ef30b66fbd562c01ab3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:1dd8f0f08ff1323d910fea8adfa13cef64c2fd2f01968e4d9d55f71cf42835d3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:8c05a303be5c536f4051ef291475b578d4d38ca0946fb4b4dd8bca376ef432aa
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:8337924489a1747d4bbca6dd6ac42210731cf721b549b5830846b271621e2ac1
        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-api-rhel9@sha256:8933f1a8dad97352e225e1a1f7f0edbd2820fd60ff1d0c80a49065257b6ca9f1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:80fdc43060387a455d177019de81ab274dbdf754b9ab68a61696068d9c4bfaac
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:29ce66f04b7339725d0e3dd7d4cfeca794c33e917e0deef00c44149a86a1c3b9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:49b2a58eeb994c5398f31e89abeb2959b079207de29fae876eb8ab90a2f79b95
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:931b5d94251a065c819b3e1b39a9d35e0919174b98b0ffde86dae71a15f2f1d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:930d472f486c74d36ffc3e9ed510044e15745a6350503b386f5221c82df2a7f6
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:d6ca7787981b6229eedce40893280381abfaa124dd84be3bc1fb6f043a22d2d1
        - 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-validation-rhel9@sha256:d2f7d3e51e225c045376eb435169b2a7b11e0b7de98d11e78d2a21d4540565d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:4861381a24d81f3f25153af9c066839be83cf74adf5ec900464719197611af27
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:84998b76aab53a0ca9a83a6b8baf3cb408763fba07008e3c892e2669740b481f
        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-gateway-rhel8@sha256:12f7a8e69a1369a51bbcd2b34d4ec8c66dd1fc9fb515349a04e7b202953423e3
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:8650430afd813fd749fcd80ad5f6fd0aeaab3df048e8fe34e6aa72a07ab801fc
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
        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-operator-bundle@sha256:d3a608b37aa089ea46e803696ba4957585b875f8a810f517e891f385ad105937
        - registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:ea2229948fea841343fcaa337bb7e2854acf5f563d3ffb0af8bda1c21ec2a91f
        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/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
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:3901127db6a0cb2323651885f04a603391478f58ad2d5bcaa161a9e16332288e
        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-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
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:101993f6e65d6fda8b90c583b718b720809182961f69bc777295f47e6df4d7ce
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:efc835326cd0bf95c479809f9e02c1ce921bedd3dd2a8e67605346ec623e4032
        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-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - 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-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - 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-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:e140415e0361cabeab192ba6d22634283cd47749dd25e9cee4a775d3c409cd97
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        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-rhel8-operator@sha256:d2ae3defac36f00112c6b773e13626336ba15d6f50f905ad1c33f122bfe1a6a9
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd5353bae134c8fae833257a12641b12d0f774f1565ce66f63c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:4b7796235a0a545db83570add7a675fdd9d82b17f931eb81d0cafbedb1fbf22c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        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:36ea76632f4928c6c34087d06b942c44f6d5bdd4f1828ab4e5efe36cdaf0632f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:92305253e5770277b74bea6f4bddcb918664df174ac1cf1bcfd84f261465f9a4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:023478b773a0c42739b86e822a4d435e01ef341b8136566ea52463f1b7e447ed
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7f83cabd3579472283c9a22e5722ddc58b14bc819fa9ba8d2281560920b392e8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:eacc4fb55e8c4c30894a51944960d536508001a49fda62782c6cb2ca8767961d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d71506472636d940b5dbd3e708d3e0448d777eeecfd38de61ba49e281d2979c6
        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/zero-trust-workload-identity-manager-operator-bundle@sha256:3776c07bfffdf464660750d69bf3725aa74dfc1f207ee8d1f408a8dc6c11eabb
        - 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-server-rhel9@sha256:6a14fb03c3b7256a405cff52ae0e5c7e66b1fa1a8e3a955d6670123f5534d4e4
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
        - registry.access.redhat.com/ubi9@sha256:dec374e05cc13ebbc0975c9f521f3db6942d27f8ccdf06b180160490eef8bdbc
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-oidc-discovery-provider-rhel9@sha256:70f04312f96851a37ec9bfcc605d6a7edb4c87b548621007183b7caa2333816a
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-csi-driver-rhel9@sha256:5359e8709d1b73386eddef202d59b7c511aa5366ca04f5ee707bbf760977e55d
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-agent-rhel9@sha256:54865d9de74a500528dcef5c24dfe15c0baee8df662e76459e83bf9921dfce4e
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        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-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
        - registry.redhat.io/openshift4/ose-ptp-rhel9@sha256:bb0c3bd53144f85bea73066bed2770b0fd49a9c019f56a9f6d6f92e63c8afc81
        - 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
        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/workload-availability/node-healthcheck-operator-bundle@sha256:e60e749a273732fa4f3c570ecdb250f71e747b81fe379b5ffb75282d293032a8
        - 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
        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/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:1bc7b2785534ab8d8a9a00e81cdc961838a817df7c3c5d4de527b0e5eb697d9a
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:55e3fb0c0f140fa98e90b639cb0bf933874977d5cebaef1b885150fde7dcc77a
        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/odf4/cephcsi-rhel9-operator@sha256:4a25fab343836486ac80c25d69e3d5d1223911085a5e6a7240eecaa1ed7b952d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:87990cdf6adf9a27e9bf9a4d6935d6c7328939da223bc1d145b0991b2dfea25c
        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-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: "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.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - 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
        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/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - 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
        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/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
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
        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/strimzi-operator-bundle@sha256:b9dbbce235b7a4f45f42184cf0b908e91e17094e971bc29a8710f35127a6b06f
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
        - 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
        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/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
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:b46457a0a7f63518bc12b2789f75afb0e44496e62de918b9b584129c7078de86
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:026418bae8b2d425d45b2b3481f65c241d89e25f455e3fbfcf2f79536d978bca
        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/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
        - 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
        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/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        - 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
        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/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:5d1e188d3e7b12fbb1b94ed1ac58ea059609a53243ded1bee6d1f179c2b48b4a
        - 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
        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/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.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/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
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        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/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - 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
        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/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
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        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-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - 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-operator-bundle@sha256:a7ddfc685797cc2f2d26366b6573fb46285097adaf0727198cf19e91c8dc5531
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9@sha256:2e146263311f096251110baa0a88bc49b73d76effe5d1bcc4f2b8d1230206090
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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-rhel9-operator@sha256:635869f91d1c5be205545396abf0d6d8c6b2a4efedfb2a3d10f97a9f13b936d2
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:2041de7d28a07fbc593ef975b59fb9470b5a13070d4eff9ae225c6180b3f9417
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:0d937371ad5b44f668e96d35b2fbfe189b72f5ec89ab55faea9359c92d1026ab
        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/fuse7/fuse-online-ui-rhel8@sha256:ef229a4c8851ec495f28d0eeab83b137cd02698e283f76ea1b32271b7222621b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:4f8849362e9ed6ff95d318a04e287b7ba33254a2cf7abdaf9b90cab7cbba6646
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:fcdd0292ebfc7e9edc36241f63b54a9d924a7605329c934ff2b10373af26dbbf
        - registry.redhat.io/openshift4/ose-prometheus@sha256:7f679d6c03535e300dac366f4bc6dd8d781d96dc47592836713f8bb76be36fa9
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:5048cd4fab2f98e6000bc60835c539cc40b70dbe265e927cfe185595347d8054
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:53777788253eaa1199e1854d14782619aeec0df9844d86b83742fe0005671cde
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:3f0277e2c278740307c9b2d966f539ba12317e306198cb6c4c1c52a2ad9f4f40
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:5dd1bc8f6b7e724736f4aeac86409bda3e0f64f62b736688e9572d14411232f1
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:df2d55dd8092e9e94d034166890117cf5d1cfd5cf52ef0f90cfa2374cc9e2d06
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:96810c770f75057b8bba6b78a5ba414c8289315d8af1a387f681ae5e4fb7d6dd
        - registry.redhat.io/rhel8/postgresql-12@sha256:44215c5b244b190c82d9d371a8ffd39b0c83576bd85c980cc72782a5cf9e6e1b
        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/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:ac514973ec428d815d7a248d09d27f2a84f762aedfea63b3b48de9e633267ed5
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:8b9bd777bcbd20b1a1bbbc18274a5076a67bea1f928d772cb243c57fb1da7408
        - registry.redhat.io/openshift4/ose-prometheus@sha256:400a6ee03c3200c19b9b15c5d037a849633156a62e13922fb2e62838024ae69c
        - registry.redhat.io/rhel8/postgresql-12@sha256:9248c4eaa8aeedacc1c06d7e3141ca1457147eef59e329273eb78e32fcd27e79
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:4de91e4527022e1b25df8d3835ddf778f773c20334314be9ba01a885c82287f5
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:e3a13ea8b84b9e1abd158d394e11113e5f6c04d879547fa1d3e8638f1ac979d8
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:251c29e81f8e338f980b475b841647a977807908c388f4c86e18da7bff1b198a
        - 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/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - 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-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        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/amq7/amq-broker-rhel8@sha256:75d5772c792a7c795281acec3d59e90021c109e9d7d1110868be0b882768aefb
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:c668fe1f5d25baddf627acd79df4c8d2ab8b05309d3d41784ddc0a10dd5f34ad
        - 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-server-rhel8@sha256:d6df09b15599e776b49e1d46aa01728fd02d5629cee65e77dc277c0166554e0a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:eff9f8edf28ccbadcacab2022fff9e6bc93926af97521b49e3968eaf7b6fda65
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:f65600506db985689e5b7cd8b838e646d4268a0c4e272e19d7db3577a8dd7ac4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:31258400bb37f4b8837ef294820f8a728ae83f8031d4e01ff0392690a315a30f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bafd85b0fd1256b8a60a2bb368a7e68f5dbad72718e5059a65660e01a425d8e2
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:60d5cf00411b03af3f1149a2bb3aeeb196c063d19625f876a094ae6baf46b54b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:13e9ea359cbcd3e0e94a6589b86b708dc84197f152701fd4092fffa234d11b58
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:c3e95e808eecba8ac57632452d3553509131ca783f62c68754a582cf5c55efab
        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/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - 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/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        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/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - 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: 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-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - 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-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        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/devworkspace/devworkspace-project-clone-rhel9@sha256:3f0619571d6fa2259796f837ebfd0eb0fa225054ac38ed0d144245cccce51515
        - registry.redhat.io/devworkspace/devworkspace-rhel9-operator@sha256:5382d54bbd3ade51a7dda1c8a8a86aca30fb5655c61a4a4e85ecceef7e36f168
        - registry.redhat.io/ubi9/ubi-minimal@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44
        - registry.redhat.io/devworkspace/devworkspace-operator-bundle@sha256:e2b731c676f12ff02781f0ac279ce4aa3652b6e24e90eba5880579c49b737adf
        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-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - 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-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - 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-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - 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
        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/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:a4943c0563c45ceccfda0a01e26be3a01c1437c89d927714c577bf6060495958
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:fe916630003194dbcd3894dd880cad8b15a041a5e534cd8f76fde6296db00797
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:61fb98802490323bb03ff4a7060334d8fbda9e9f95cd6366b29b1b6494e4ef8b
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:7dd11d385b3d5a178566d901650ecd45e4af395faec2141d57b98af8fc1e5151
        - 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-dispatcher-rhel8@sha256:3d7801f7ffe6420595779673a170235921a9090333f8ca51d5b7f664e19c82b2
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:3b7449287adf98f0cf0a1dc74e03b69218be3bcf5538327bc34ef776cc1c69c4
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:3aab995872336e6ccb590ef6488c097cff38a91348055031145427a00aa6b732
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:de0634d14962bdb8701a8c29e80b7b70684824462bc5203e5fa7f139839cb73b
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ad399867cbb712111db6affaf5c9e3573699ed0eb0def8ce6057de02054ced4f
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:56e48afb1dcbf4e266ace944105f3c45042550d8d4a0528c982225a793d26d56
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:a59ba5aeb8e66db3d8ba9074b8e553603c59e6b0e35b57b82c4ce3de589b94cc
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:557e73127326be051aa6257e7daeb9721e2af04d2f06cc26cfc7a1073666b989
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:594c3ac24bf59802e2d3fa127e4051277bc07b6444f934f535fddeb668ccc144
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:16b39335e97bcc7c970a8ba385c61d8333e9912faaee813ccf8520d434b7bb7a
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c12c471902b8e2596588d9e553ad59b501d979dd04f301d45f7d45e794737a8c
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:f37f494956adf0892ffca34d2a4c9b839ce28dc9f2779ca32e8801fb4f0e9105
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:b780634fffe2257eb845f8c1d25498d9c654d0327c1f8841b40d90c176a2bfe0
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:4408d1fcf34c0ffe9327d4c9c0bc772afa969d831bc5de1097164d10b4e8d900
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:fd86ea2a34de43014dea3ba2b8d705a3d94347d3a24a370a8bfd032ed239dc56
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:04866e16881f64ff2b5edd379eab0731c9d66a47c25ebfe79c8d8ad33d8116e6
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c2cb80bce34a74afa76151d2b44dc25ece73fb274cdfc6fdf243b1b0cb7d989f
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:0229a0a4f026f04f8fa0a1cd8e7afea10117fe3f12e21986ec6089769c8afcaf
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:8273842d8e1714fa03c7e0809924b1ffc5ef282f79b9606bd8ac88c03e7a16bd
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:c4cff5ad5b0ac79e71a16b88640a312ab320817041317f50caf575f7e12a864e
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:397eb425f383c1273c7976bea69a603530676a00a61f461ceb5f48d67901c4cd
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:6342358e6aed2339333ebf37fc223a41a0a3e199a0e4a840f3f66e5accf8f233
        - 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-service-mesh/proxyv2-rhel8@sha256:a10e76aa15707e708f82c8d9e8b5179bf67780d99f3c3e2e99b84ae2a0aa4ecb
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:216f58dc8c8166c0c69fc0312b667daad14cf39b7aeb7bc0fe1e313376f1a5fd
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:ab90ec9b3cd9203fdcdd7c43abf95f48c9d7479a9c7af479eb1e4b6599ba9642
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:e5db11a0adb889f907cad797dad9cf2de09c433e5522fa333193cb35575802d8
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:aea5f200a845e1d4dc718d76465fdbb1eeac2b20ecae224d5d20a98214ad0357
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:10788ca67809e5a2d76d6d72df7dd64ea4407773999707a7681e0cf1b5c4695f
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:a3c5d5fd8014c432830be912aedebbc58f9c60a8cabd87ae6c42c7b8d27db8f9
        - 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-tech-preview/eventing-istio-controller-rhel8@sha256:b6ef281fca2b80d379b1e28fe3f23119df8ff765fb2cca291d514053fb512da6
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:06e9e073f092dce67d4227e282fd8eea6dc9f38b90a8d444cf448d80d027b616
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:a5154f9d13a1c373b8ba47e2bcfb9d4474fd03e08db4134c92aa4f049536f1a8
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:01c8fee92889a84a19136b0843e4fed5db31c1f2a6d997669f103373fd995e36
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:96c135ced2e3bff434addb012368d96d0778ef1d294ba507ae7e624811e20d46
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:6057a2d18406e00b0b7b1731870f707844e39193d4cce6de50137b77f17d220b
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:cd1abeb2067afa44a0f1eca301cce37307582d56c1147820ff86b9b64a40588b
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:2d3e314a6584fc6974517c1a992fb59f5133f54c2f6cfaa42f579c0d332e0300
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d03f2bf8f5e7cba47102ba26ea0149ae6719076c645d5e451058392d6044b738
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:e8c756b659f6187790bc1a5115e0f71791bff96630859a905bc5b75d14596e0e
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:1455606c8edf611d996a48e29ead53e0bb4078f55384b7689058bb25fc59fb2c
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:9a28cb1d4c4f4dd7d494829eeeb7122db2174a27747f915244672c95dc8f9d12
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:12bc62246142a605f4efed0f6bb8843aa2df7699cc1c5ab53debb94b0682e9d1
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:85a369d5696771d0932b61760336e52ae3f7c66f9a3def5312aefcac03ba516e
        - 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-receiver-rhel8@sha256:96d6f52711ba433ab2f273be8080840a88e626e989027480424d19c2fe1e9454
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ef116868c9c60e5ee246060688da49832571ff6a7901cfe143a42d048743736e
        - registry.redhat.io/ubi8/python-39@sha256:0ff58549041d32b685cc850aaa85da32d1ef73f99cd4b6e0f6882dad5f0399bf
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:92a39ca90984cebb1938447a31c9170b52994ae98f83caa860acdb2c3ebb75c7
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:124087e6402caa375b24b976c3b9fd7d53890e20ac3b0b57ba3ac646e352c7ce
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:16939b802f4c16a3d9d941917d0363325f40cdef28f6e1a982bc95401117674c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c9353a022e6f883b7c0b2d87b1bc4653172feb13806ebf0aa075d6f9f43c264e
        - 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-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:a0c5a91348ec71697747113990652feb024143fbbd0cdd67e8ae672730383a79
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:e9505aba7c44cffc3f261a5dc7617a0e54ed98e78f73ea3c9c7a508560b792ed
        - registry.redhat.io/ubi8/openjdk-17@sha256:af305e087061cbaa4107ce0b304a1ef987f6b54bae3f75bfd529cfd084cba9b5
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:4800c85e8de031bf77f6fae0e4c8e6c1a9912ccdfb77799cc2ea574c37d870ac
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:51ac9aced282f62c8fb2d3696da3696b8496d8f877e9846fe3a4a743ccd63bea
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:69ea22c646c09208ca68345d4b3508453d8c49f7f7fd9a4ff4c4cb78be7bff43
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c933641efc6bf919b1945be5a01dfb7774ae865975b1bb1f44653b3e4ca9f1f
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:66149df8549380673c24e1487d0c2c8eb638b7e502455671ca64ed6f32ff82c3
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3fb6e7626d2b0c92c2a2fef35e9b8171382b4bdf54393f2ab1281ae7ab441761
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:e97eb2bb7eb529cbfe67c14e823ffa1269d614e2d35723896e89efa12a499c6a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:53d3620bb0490d83aaf6a356bb7d3b9e7147222d1a2017f8317f05fa90cd3de9
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:3508434d5ab6b38c8a7466256f1158ebcd75e8b751afcc5255da8c21566804f0
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:21a638b481639c3c58e8b026d875917c30a5874b08fa4ceac40d447076b2bfa4
        - registry.redhat.io/ubi8/nodejs-16@sha256:8abeddc6ccfffbe313f87e5e069e18cb7047f2c7880ad63cf15bcd0a79ba71ff
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:3c8bf480dbb05e09e8d07cab12e4736643f61bf9b5d98efa6bc0557eb31887bc
        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/openshift-serverless-1/serverless-rhel8-operator@sha256:3a4e7412322755b4c278540c965a403f9e178f138bd4ad7929c1c24a8036dd14
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3b01ebdb0704dc6a1a993ac076819489495ab3fe32e3c14609e42d1358856be2
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:433821e6c7f43da5ca2e38c0550722feb179a0bab021decd9a97ad020cb78b76
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:0a2989f688b966277652957b312df736ada43fff78fd89b17f60b2137e38f115
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:9e120ecdbea54eecbc5e0412c1774f8a2ee70d7fca682ecd0757b8627f70680b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:2572d98363cca2dd94984d6cefa573c5054fc206ee70048f901ad4b846d8dd52
        - 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-serverless-1/eventing-mtchannel-broker-rhel8@sha256:9221a833ecc66fe2354aee7aaec2a2470b21e2d89cb6ed287ece32edab2a2edb
        - registry.redhat.io/ubi8/nodejs-16@sha256:f90b28179d1d5de68d42ef1a9166d70a9dfea85a1c6a4bf12dce2c59eeb2fbb1
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:cda04e3b7c2c1f37164733ad162ea0c4e52f14fdc8eb8bdef8507f0ed5454640
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:22ffe08d6a0d5461158613f2b2a2ac6936025357e282a09197a750c42b5e6922
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b37dd2cf4b459fecb6d681cac36918e486c3bd22501df50b90e20b15fe164d56
        - registry.redhat.io/ubi8/python-39@sha256:4f35cbcc6f4e108c69f7d2b70cce5afb138741b0c961506376d524e001b922f4
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:ef7d28580e75d746449a90cc0e5343ef3f4ddd75bd9fb866d97836bfbc3b314d
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:d8bdd96c6a9b31f48c961ca438c254511db785fd34bd10b98084b702baf0ebab
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c078071cd51c7fd5584039b54a2004331c05a897ee8b0689bfcb9204a8ebae80
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:3181ad775ead55f317f96466c2719b2b73c5b35d31933733da21273955d160c4
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:d2a34100f6309c3cbac7c9ccd452b7bdab2a533afc99463bfbf91e3ba2706d54
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:1ee675125f7141e91f4ee57ebce082967834bbdabe1a870c221f31aeb8750be4
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:80361e052d366ffffe9a99893cd83965bd69a9ff81d8c9262976de145bbc6184
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:3dab790fa845ed7eda088e5abdc87799da1354884a53ff1ff728739b8e278418
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:63e08279d2852d494d4f8836c54e2ce942a342f452a23ef437df9640bb2f5bc9
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:7941b421b3e18bda8c565305241621fcdf1212cbbe0dc02f38f4ab0565d2bfcb
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:486bf60d17a5d265ebd65d590a6ee1a7e13bf3953ea797b2f6c2b5910789858f
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:887480662b1bfe09626fbca8ec7c5da879d097c46dca11764ea98474ec78ab5d
        - 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-service-mesh/proxyv2-rhel8@sha256:bf693eaa845373e1a06041626a9314ec00519a6fd2437b12f7f4f3f104864039
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:df1aee67a161fa19d7f49ba56d53e0682cc1996436e985a12a2068fa419b54ea
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:de62762efa0df95ed23df56f5520490d8a231e47ce13c433c512254ceff81844
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:a82288782b61ea46d068cc09ee10608d3201c136abfc767e4d37734775101390
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:1fcecc11b55007b9c6969a24940a391968378e4102eebf7ceabbe7efda138575
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:99f5dcb92a33c047f0b68236a3a42ffaec78037dd0a5eb79d1144d62d6bfcf43
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:af5c30fc9f631d9ed110641b815315d8b4aef539f687277a3821d9939ca5dd46
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:eacdad8db61b23634c3f89bffa3f1c30ac5c7bbb5e938c6208003ff00f9595f1
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:b2480154951109a159acfb88c5472a312a515d6a6b060d832b3f7bfc16f90ac5
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:e49220eaf3143a8958f0cb1f22115b2e834fb7177755433bdc592b753a54a8ec
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:5b38e5c71e422161e40f9c37dd2f46212cb80e8e37b00247767276b957080397
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:3be4fc173b489d0beb768739f60274e07d95ffee86d70a8423e1f59678c805ea
        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/eventing-apiserver-receive-adapter-rhel8@sha256:14ca32e999767776c3e585ff5eb1aa568f7d76fd3e5ae24cae05ce7564678080
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:e55c70591c0498b6b85f0d68e304e88b830ea0b35219ba8881143555757be4b7
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:e7e6cbb46720eeca3f0f4b9829dfeeb3db373a83c89cd808b667ded4d5e139a4
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:0729de0f3f03ed220216c6cb718fc34beece0ceacd926b5e2480bdfcf44df5cd
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:2f0f84767f7d76dbbf4387ca2e272766267a2c46b5bc29f5d01f05dfa39cb944
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:9d36cde68bd822016e967148eebd2ef3e7ffab9dcdd37d17f33017e9b703d9b2
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:2a30ae808d5c32d812406ff4ac9b472e82b6bb0555e62eee4c2c6a972f8750c2
        - registry.redhat.io/ubi8/openjdk-21@sha256:bb95ea866269ac8652f666ee1587d71f4f43da33493c2be7f6a9548bcfd2407c
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:1befc9969edd2062b3df69f45aee9771b33a2659c3a14db0aaaf5c3df985af58
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1a1de677297525c0c5d317fe8a7a42684fe3f1b422a7d6bea1f70f0924653b08
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:828d31bf8a441091b8aed03da213a6b4ffae260070eff58c3319156f9bf04f5a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:4c9faea6fd162db3340aee8c11af11a08c9d79bbed104967c25df26c4933c8ae
        - registry.redhat.io/ubi8/openjdk-17@sha256:a166bd2fedb99cb62ebf4695ab46e19c7e451f887940cdf0b8245c81e403aea2
        - 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-kafka-broker-controller-rhel8@sha256:990962ad245a6d62cd11551bd4e1f8b14dc08abbebe47beddb2f4874f78d4f47
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:46b8dc1c8ea6c40401d4d1a9868ab3edbe8b9e92364a43add6722489e2eefa04
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3ffcf746df914f0949477b46f90cb2992bb63f8198d73ffd54208e7a777a9cb1
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:22b4d47725ed8cdd663ee26a03f31198fff9e71dc703532e70c42bdfb4840811
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:7c8cefd5823ad953f112b905c651f12a97491aafc008b2ba0111f0c9e83e50ae
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:3be20d63d7e82f35ac88274532d6ab7839f9a7306ca272e7d532ac03215faea9
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:9b6524f9c0e7f78e6ffb372a8587eaf5f4f1281eaf64f93dd00b63be84a4c21e
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:ab09a1710aa2331e24df9e7283f3909fdb104c1b314dea88e919d0a396f334d3
        - registry.redhat.io/ubi8/nodejs-16@sha256:69439fe83fa957089cb6fd3c1042ab71d719f81dd457a5d1fbc56c1e3ea600da
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:8033b7c1e903ba313134645c626eb3bf7ab1a0d68dc2575bc8e26884ad4f805f
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:0507ea8745267fdb53329a5274d59d23c387225d2594af51dd2603b4ad99db0f
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:b008da825ee2429f04cf39258389740c68056f82cf4bde0cbd3db850b6256885
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:25cbdf78b67e7f5a360313ccfbe3b6e2c98873b4e9ddee46c115a623e77c7abb
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:ab9a1b952e9603b4ecc5f197715a1d871abc25ebb0c5e6470d4f0b365ae94276
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:b0db9f0fc85fcdcd5da980633a3a44be2bbabae068f89d0965263de38789e812
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:70c26c7ac48d1eaaf1f95ca5c5b8ba8ee6b047a3c9c4a2c2db9c49a506bb2205
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:e70dd3a9e067075eb56e5f2772642545e308348cd49b89357c02de3979b1a5be
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:da5f813dea324ffe9679524ea7f3801536fa48f7dbbd8da56a8492b916b15fc3
        - registry.redhat.io/ubi8/python-39@sha256:8c96e8648cc6651d0cefbd20496a89f208621601f9664554d3fdeef8ced25453
        - registry.redhat.io/rhel8/buildah@sha256:55f5c7d88c77e1ab5a2ab8e877172b2b66cb196e21f10dc45148470d0ee8bbae
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:42f31eb8f12dd36541c8c0b6572d942c62e2064d5418428482d676d117a6c426
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:e1e2273fdf6384d95e1128e54c0794d7d620291a272bfb1f91e0c2723be7f1b7
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:4933b76d95d411d597d4dc460fc46c92875d28e107cda661946206a9d934b8b5
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:04e5b3882223d45a5f5383ce6481efb7b2cbedea57ebd894caafb1454ad8c09d
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:5930caa25ea875d29dff0ec5e235eaa13cb6dc98980d8045335eba1a09ae761d
        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-kafka-broker-post-install-rhel8@sha256:510e98837a549f489b2d74939f3b9c7ed90a8260ba914910f681d5c0dec7655c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:2bd241898bd54dcb248ae86470430042dc545d45e7519ed470a1a9c8c63bdc37
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:dd1f7c850f7cf2a4d70403deedd8a57ecc6e0ee5455d68fdfc49ff175fe42dde
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ccbda564735555785815f27f8f25ad9c6c27dabe4e262586fc51609331692527
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:359f8b9fbb4c3c2f79e8c70f3b50c994693b930f6f078c34c87112ebb93037e3
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:b2be693c71cfc4ce934d5b01efb863dc6e391f93a6b15fe7eeb15914063a8294
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:42d16e4d9f14a427e7a5b7e3a4ea07c258e0f2c74984baeee3b4926a8c5e2640
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b12272e1a9cb4f4bb62c4badc62b0bab110abb99484612dc781c46bfeac13cc0
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:6dbfa2573a2c78e450d3c1c04c6e7cbc50d9272233e828fe9b42e575ecf386c0
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:c3dee2598088bda36ef474f4748943a29169ed9589aeb0f77bc79a7f6bef9907
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:a0399a993155e755409355740b260d9b0019559a62be3b6253d8693a4fb59286
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:09060de091d617bd4606f7a289b4528265ae0b7a04737f383e79efd5b0d3eb79
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:e9b38f1df225238836aa829f3a2016372859fb8709cdd2b30496498669a90be1
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:28c9d05a3ba73b76f293e8f4902b574deb44f77a2bae8cf92473b8a8b10cee92
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:62bf4bee0ea17ecc60366ecc71431adc79d6f0a5b9f59489913b474128c4adb0
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c7f29554d04eb9348932953344f2ea0806d14e7704355619381bf395d993f58
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:eab4aa93b9d175045b1f01bff09681107d839285e0d633cd5146d2a2efab373c
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:9b850afa750a67120f68a49f4834ba7f105563df22cbcbc563317fe1545640d1
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:93b2f5211e79abc38bf92f0b8fb8adf046303efa2fe62c47a2fef9dfb5662f55
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:ea9e4de6228d5c3ed494c2ce5317ec290543ad40bcf7c43c2a3d6565e5d94e5d
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:f938cc534fc4b24bb9449f1e1e1e904dc588e6646c98474de4b8c81d083b4d96
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:d8ae7bc888f11121fbbba65074389b879bc22453bbabc551d79d0cee68fc33a3
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:879fca768b46676f1df89de1cdc4ded8dac310209c146c2f381ed1deb19b06be
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:05e3dd6255294b691783523f7722cfaf13aca1a1e1dab344a25eeea72aaf9f9e
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:56c6ac59a68976741d2ba676a53e59fc494d04dc44b513d72fdf8a9ad894a54d
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:672022b6f2a080483d9d6f6f4a5f42e52e522a5797105f3465731809c6cf4947
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:993597ff83a4d62a23f642fadc92f182944b953770716b73b7d19492b5a462c3
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ace72435e3e63ab21dff2345f958cf6bd171537ef2846c5d5d91cf821877140d
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:28ae309e4cf7feabaf78ac6067e1173f9f5b33a71c06d6c27cf25e01a0b1ed64
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:a8821b59d495e24598b27c6510b32ef19de2bb04ea1e568fc5afb9135d772036
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:9b94875e0e5d7abdb3b9ba7b04e217a2a9b7b4410d38d1608c86d1c21f929cc1
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:b871bd08b782c9168e9a54340efffc0b0effadde8079915b848e4eff72bb3e95
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - 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
        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-in-memory-channel-dispatcher-rhel8@sha256:b801ed7b1cb32d4a1522a959e97f280f2eff6fc92e47fea2ea022f180d37831a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:d8b94bbce98325fe8079c11c0b7a6c59bad8a7edd0532a7d27ef1632ff0de708
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:09dd94090eea9cac7a1935a6d671cb97fd9fd5714c715c9d2aed461e468ca54a
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:4b6f161c14c68536ec2c7679d30681afa9a1fa2d512548f0f591791a10a8b894
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:1c82d20ccf5eb5f8e7725839f1060f4efdfd1c1b4773a99bd905e690a6e36f38
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:095629572a40469eb651c9f81d6c10ff46254eff8b9813cadce54d6f0075c2fb
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:a9e8583c19ca3e01593f8c0e54731cb73df9b46b2ed47a2b1c711828c2295f82
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:633ea30ea3b6d5152bbdb61acb4271e5905d50fbe3c731fb4c8d8640a57f1970
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:76480201188dd142206040af845bd55b44155af92e0c5ee9bcdb8660bea0cdb8
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:0f126893074cd0398654c4018df6e882b7610e148c82a41ac814f4bf3830bf9d
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:30cb41f09067959cfe3792e070fca62820fcca4035683e5c43dd46d1cce97c01
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:f94f0e8d21a6b6341b1db00513a1a2ed5cd84fcd898a376ecde942e940a518e7
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:b9d85323e110d8eb6600223c38f9d4cbe89b50d59e03bf1e6b8808f7cef9a3a5
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:6d042c614431aa9a9e77cf8ba0064423e903f7c418e367ecc23bc02a24a796c0
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:b07010595201d7cfe0ec4f18e612d323eb38464c74eb187f275617a744d9df12
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1252960c0c0a4dc7b39090cde0fd5742a19453b1a65a08b737bc41d044a0882a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:2adb0124f04d6c4a552ade79dd1499c8ca997edb45855bf438ca8043b2709e19
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:86ffb8be1762782d643c147cefcfbc2b4723b0f97d017314a99bd2275d05a1cf
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:d40daf67b36387faa9f55e70e50d10d02accfd19470c0ac11b78bf969947fed1
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:0f8d006d0e7468783739942a1c82c7aec376c9948f23841132c8ddece8ecba06
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:d5ad3c9db7ce8e4fc950261f7c388476214a03d92e0043c7bbc4f0add2b1e69e
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:e520d1b6b87f85dfffab5e53cfb70562ab7edf450061c07609da39e3b2498fdd
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:946daeff59b41a6f8c4842f8c2668f97ff1b49e2a8afae5d64ba3baa916b1d95
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:144883b09d8a999fd4d2a109d074e44d7d8b959987512379aa71c71e4060ca28
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3d17f12cc9da578549254ba1b8934b5afc66e453b1d5d667bb90281e45b8795c
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:a5950f81cbc64d1edb64ae7f7f120c3435d36afcd14ffc34ae522af297d87e1e
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:84994eabeb7342a0771c7cb1bdd70e7ee3928dd45874eafa64cde5bb385fe964
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:45bc50a993d04b775a153e985a43d587d5455883fc4c6f31b772408297cf9040
        - 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/eventing-mtchannel-broker-rhel8@sha256:586fc8ed88f91298dbff31bc2fc4c63e0d6d9356e3358b2f853f49511c3ff9bf
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:512c4d93dc13cc53d923a6990770a7527d6fb657278e2c5d8f0ece3cd5020155
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c0376504edae12e7af6b6cce02ac53b6b374f5058ebefcbdbd32628b551bb0c4
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ef7f34a025e40f93fbd51f3a4596998a6dc508db824f137ffa1fbaf90e88f4a8
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:75228e70fb1383bbdbcc64d0cf24bf5d977c09112e3f32316824188264c3a2bc
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:33d62d13e16f47db9951ac826671f39fdc048fe7c3fb019eeb4bf9bd0f814222
        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-eventing-channel-controller-rhel8@sha256:e743dd93b7ae855825716403979db3f34cd300caad130e7d3011172b1aa4eaf7
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:477b1ac0db0abf1e16ae31bb22fdb73dd98f4dbd243fa0a7e6e94852b16a813c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:cb2ebe98481808e788ca70e7f0a9b3402818b622158f327b99a1e87c23226d2d
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:0e58edf5ee340fdfb282faeb6c9bee8cd6323e7f29a9b282dbb91c2622131a9c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:e7aa54986c3d388c1bb00828c9ccb294ca0b6c26376c7593ed6bfddda0ef4e5d
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:3130a5159adb9b4eaab75a0209d2ac639156d5e9f2346a8b2e6e0e22fad4b45f
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:d0650e4d7e72241e07a3796f20931adba231fbf5e401a45d794761f2c5afae48
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:818dc7bd69b453ba5882b4ccb82841f2d48c7552368417bac20bef1df64f52ff
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:0751b9ea7ca197480c4cbca17654d0653d1c0c760ca3c818c2a1018dc952cdc8
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:da8d975527ba100313b92e87d6d2690fddae9988aa8d82d728221295955b7224
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:6f4fa254d923f3260ab0f7d6a0b459554f83b1abfcb575a5ce2c0135fba32427
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:91456907c61952017daf07e376b565472ef86d67a2925f60e189c639ceb68595
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:8a4e5e0934197c32e0dfa1efc922d750940587fb61e0df49d476a2d035c53413
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:b2de6b658a1595084a202203c90704c3f9de018a7a904ca276112ad606e374f1
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:86386b54cc10743023884193b7d6c7159b90052bc5e4a0608a6cdfd47865c966
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:dfcd11686f161d44786a205d12f9d628d9e847d40ffdb628ec9aa4a0da0b86f0
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:f56d21089566330ecbd9aa8acf14da332d3db7360aaf6da00c9a19df83f7334c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:732827652b7a7a49181e86d561831001c28b72b7e12d5e3c1d71b2e496003229
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:020264063c50f2a4590f3d7524b271f0f77350a1f8fa3c35ca6e28f0162aa9a5
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:b66bb9531f05cd46360f787955c849208496e3e45541cb50b23bfb6b68570aa8
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:2cbe84afebac23b5397d144b4d5660af33290df451141fa3625607b6033983e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:ffaad2214fa897e89e92e574eb5cd1c671edab7f6eab87cf2ffd4ebf162b3cf4
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:b5db9a51bbb46640b23712c61e9c5a1c7bbdbcd9a53b0b92fa36b80dcaffffc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:4ca1bfaf2d7e9477583cddfa40f0b2ce59c20ff9ab20022038774dc3cc49662b
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:ab8f85bb18311b0bfee00561ef6b5d9faf810358c954ac2c6f39cf2a7739e07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:6b842b4eddfc71a2c8f6c1fcebb8f23a05f50c95be1ba2d20a1be660d3014c8e
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:86074674b7926ad9bfc95556e50820792fcbc5e11ab02879378625ffabdd1889
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:6722aecbbbefa80dfaf93143e033c562cea0982514e2eea27654dd4638e1d072
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:018459cbba2e3169bc4be6564cf3747c9cd0677445912abf237f8fe6d58e46ac
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:d68fae6fc07efa9da9af0532aadb49f897a15afcdf9a98dc7517ff5e17735454
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:9b176477be4c782ce60d81a72bacb566069a499579ce6df5a987a0841f05ad5c
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:80a155d2637f47e249fd69760b250c9b7a1eeb6781de9308b54162bb3e1bce71
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:acb28d84cf03b8551efa32646864005dc3bc9bb341a696544892dfd0c87fbda6
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:56e7a0158a713c70765ead847732db4e5f8439aacf31e9a4a22672b583028064
        - 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/serverless-kn-operator-rhel8@sha256:ab0342b325ee67cc2a7d321aa1eda9c6797dc91fe2b6f26e3cbab53fadf564c7
        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-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:e3ae1cc6012f19631c012a07b113fb015977d2ee4f9faab3207fbc2464c25aa7
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:074ebfc4494581611647ba90049655a470ca43743610a27be77db66a8633bac6
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:78fee4c596f2848487ca704da3fa1074e3c9c99b3f96f66833aeba63836d7b93
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:3b04e9d8cd4b5e43a07ece838d10478723a6c6529350f010550b4a0d1d0950d1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel8@sha256:a903480159ebf1d8652eeaa702d9885fb76bb106c02d75cec5c82c31d77d6410
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:ed60e889a677fb139f2eb4bd9ab4fda6ecc39fd050ca2b6cc1c19717e428535a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:a1834b620f875681388f0ae224dd0771773a8b61b1d8e5214a942f232854b87b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:ee6533b71cf280877c9d7489dfd821c9209c6802bed7fa3fdb4f8f00fbeacb09
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel8@sha256:27e74287774cda208f667bc2a386debe6b6255e8991abfb37c959c8525f2af53
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:d6f338e08fa937c8a4ccfec692424de4acded565f7ca3971ea507dffeb351503
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ed89e221d7a0a1dd82f2fa75e9e70bff3dddcb8979594396590bd3a15673a152
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:6210a946f373b9c36c9b31293debe6fed090008b8234c0ba17d37fa81646172e
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:f4d86b196457cdeebdc380b6f1b707c10f8dee789c7779c90ee1332e511af8c4
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:9b328fff0cc8545fb9bb1f24f11d78cfac3ee76dedc11fa4def4262d79a60e8c
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:a6f565d73375e827d830dca85838f4c4cb7f08b0c078acb0c0d567b25f0d256a
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:596a7272d6de714d7dbc6e00e9e50a2872846c269547465252d953172ef0b009
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:4344716eb2940c6a3fa9a278250f936602bb1549fece6037912837719c178b24
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:bf82b37ab8fd29c7a7cd846008a16d14b4cfdc1c09df4f731d71be3957e90123
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:187fb9d64b53c55a029ffce3c0f9e7c3304683fa8a0e832cfb7134e8a3d0c237
        - 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-client-cli-artifacts-rhel8@sha256:3fe326ad9a00b112fc888ffd345c8d5042f0a22cf32ea575931192c39ce1fece
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:4aeb68a22f63300e54391ec6b4cda8c4e665d904b5dcdd3c40155040525742a0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:631eb3a8dd9d83ceafa7d8a4da4b1e2d4f2740e6017c766828dcc7575cf1322f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:429d5d9568cca31fbe83c663276a300286af4cdbf3d35685afdbe5f6f2f8c6e0
        - 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-ekb-webhook-kafka-rhel8@sha256:3d780ad1ab280b5092b90e277485d589da2a18e8b08090af7d95aecd17af545d
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:dcfe5fbc57b9f8520adbff368c8bf29eb491c9c26d1a1737a1722cffea83eb1b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:f2d112ba9fdfccea988589b99b463c8a7157475f7a3f03678e8999e65b678cc3
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:4274004b6289fa9bea3fa6e56d64077a328a6b5e63a9f0e9c41f6d561f682bd7
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:77e4689b2ce7a713e905553e0e42b8e128045f40cb6c6d4ee082f126cbc46b00
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:0c2cdf917bbad1f5bca8a2a2ef12a96cfcd0c77c190cc35687eb57169b54ab6f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel8@sha256:afa634e029bcf79a972f49372498d44b45bcfbdb6eb28ecaf4f0b0b2a0a1824b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:c39cb88afaddc295d93a3774b8a20d001b82392df540fb502ee02316d82460a9
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:5352e4eb4e426a41521276decadf204b6d23b4762a298e4d3dc73969e3eddc68
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel8@sha256:30b8045ef5f925a36c58941386f1899bec125d005a08aeeeba5edd49b0859149
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel8@sha256:8fed5ef9a1f39a55077bb5026c8854d0ee7fc8d8ff5da277ce9c1bfc2ab2474b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel8@sha256:d9b944e64391a996104afbe8a21f66316a948e9fb7b91734e861847285be59c7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel8@sha256:51b5e18e8d4c1ca81d7c5ddfea6352a3887f757acfcc53bd2f8bd3b01337ed42
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:01d632b69b4a4112426afc4184c72eae6d8816974088e5980c9c808f0782b85c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:52ba6b1252b6f3d41e2a0b3b880cb768010ab9dd925ac34596f6adaedcbbe07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel8@sha256:3af4c48030263eb5769e5f36a6dd13fd390d8566efaab37532f39e1df1c95c67
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:82e69a1890042f5636ac7bb645b1aaeaba0a4894851eccc1fa1c63296918e31a
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:f3d87a7fa5b5f2818effcac3304bd56eddcdb0db97a18ac0f35a06fc7e223e7d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:c7c2e738e0d9da1d2d1993f68938e72c4709b1f28a54fa92224ef6a0e456b0aa
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel8@sha256:88323da16360981f27b8e4686fbbb64053e4e0e3c79c65d695edb317b334e1e0
        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-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - 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-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - 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/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - 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/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - 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.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - 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-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        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:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:dd84cb2dfdecd4f5a3fc50a9e167ea6970d1d52d8c7427c201a74a76e151d430
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b3f83d5f406fd902bd9c6773f14c07649474edc4ca40bbcf75142b316a094247
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:81a004dc9d33eec151ae38f2767fe264a590710d2c3a60e934d440587f9980c4
        - registry.redhat.io/amq7/amq-broker-rhel9-operator@sha256:6fb2c32028429d50b8ffb26b63b6f9b055c9c3fedb479dde6f7d8dab9465922b
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:7a9c3e61345a8ab7c6f91701babca4a566beeb959bdd6008ea9b75df79a3b532
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:ff80e0a7accda6825bf834d9aec27f48205dd6329991890dd017b4d21d0da5c8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:80bca92852d08a7657fb090fe44bfda10baf231c31139a24edec83f542f36232
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:54004a7076fff8787f14e238a7c2dd21884a882097fb474412d96b0138ca9249
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:755d0f7421efba76f52818bb3a8667cd7d2dcff2c7054dac1a4637b74ecac51d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel9-operator-bundle@sha256:7d3c6e3137aae3a0f612731fb8e2d44fa6c7f708fea2b6382ffee0a4d1f15b3e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:c8ccf2fb03e97fcedc3299ada2f63f47beaa7643df4b201fcb30899f923436b9
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:f92b41ededb92e88d439caf1fbeb9322354da4b7a298bb4ae6873871a1e3fcad
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        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-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
    - 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-operator-bundle@sha256:1696b6f86abea123341f703981c26d79365c8a0c046d7add6970fb7b1848ace2
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:8c5c8c530c63bf9eaf4909b9e6b7d234a0ff266f31030b60869c4af1b2167b73
        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-rhel9@sha256:293e3169bad9ed1739b0750d13a7e4572594c2f5eb2eca6cea04b588ed06029e
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:905406a14759d960b41f56dbb30170961fafc7b59421efb6c2bba5c6f91a9f39
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
        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-web-executor-container-rhel8@sha256:2f0622774367f33efc321926196681322ab1535144e6a0785608c8050fc59f2e
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/mtr/mtr-operator-bundle@sha256:190a6fa2a6a9b6b182cdf9cab18814d05c203b54ca18dc533e553fa5dcca779e
        - registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
        - registry.redhat.io/mtr/mtr-web-container-rhel8@sha256:cb88a5453b506ca70563537ec6db2f44ff8cb4050c9652ec86eb5128aa313003
        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/odf-cosi-sidecar-rhel9@sha256:f6f1d8f6d783c81b932280cb8d4923ba4b84aefa748d26351d6392c8673d10ee
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:74e59db870df08fcc30a6869451af3a6f5112777ef25bd7de887984ce015bc5c
        - 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
        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/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
        - 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
        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/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        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/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        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-operator-bundle@sha256:006edc597eec839f960bfd191b75217fc8c6bfaea9d1694e7ac9fa34266f9b4f
        - registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:767682dd3bd65651a8204c9fb732b9c48b99127189992b43abc6ecce027f4589
        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/virt-exportproxy-rhel9@sha256:6c5f2307fee82aa4c09be8250d52f2b5afdcddea6558879f161df0e184df9146
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:d3036a5f83bd488ac4d641c17cbad9f7621943edc2dd86be5b0b6119019c9d52
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:34df9b10d96231666cb0bff52ffe2a2a07c38b73e20472bcd005f5961ae3b7a6
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:56f2401c00e5b6f4ff7262725ddce0b4cd431a3eb7e393385b6b9db8e3506b91
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:2979769ff3b5d494633f221190a9520503a1526dfcdaf930f0d7526e370ea473
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:357057fb344983d0cc0b29ccbc8be12deaa3ca506023064988cfccb41557a645
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:d1d96c13e31b52fd4d0cfa6c463752b496d4561ca1d073ca7d05095221922d60
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:3cbace21d5a03b007e4fadebbb584d7c5daff150fb974707b2d8d7a2caa33159
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:829714c6d8ae2160e3b3e4e4680e637d3c5abaad985ad6a166a80cef9605c75e
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:e4aece12cd6900642c54597bb774baa476c0d3c09b8f94cd6cb8f30d21204010
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:c4a38bcc6094b76a0f082d20e5dff3f2912da442930804c4c42c3018aff2709c
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:e5fbde9eca277212206e4e1b619ea1809e7e6506dd6ea86b6d34a75f128060fa
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:600ca5470697e6dc1d8dd51b905943773b8bb602d8f167dbbfe4328168853514
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:d198956224d3333bae0b872616faa2affd98947e19ff4da78e3ec28cd632119e
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:abfa2a92650be61f1785643bcd051dfc26c186974430e2c7aaf722665a057e93
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:8d45195acdeb8aa507ce9d6a89de4197f2564f9f1daae19fbd771090586d2ad3
        - 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/virt-cdi-uploadproxy-rhel9@sha256:26b86907ad25fe1bddfc69c1227e403879fffd1495c52c9d833ac2ae44ebcb75
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:230ccf9d52838aef4c236d51aef22f71ce0c548f56b384a7361921492c68abdc
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:943018739e3db1763c3184b460dbc409e058abbac76d57b9927faad317be85e4
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:c2b07b95fd47a5d968e809303d9ab79286dcde62bf173adc5717586ec182c0fa
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:28106cbd0375054cf0d06f3fd55d3add39fc26dde9a35a22cb6a95cd0fe59003
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:7d9eb580f06b9077c45bb6a42287882e0ead5b4eead67e05a77f0d3345b5256f
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:04096d91f02fae6188a085e456227a0bb52e52f07f966bfc883c63e7f50d6870
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:376d3b416da5afaab1b525d9cbc508ed10e1d9adcd29d0d05e2b51ccefc5ef73
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:6db561d095d29d656abba9713392fd94cdf031e7ecaf1c9df5b8460c45730df8
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:62b720486b6e60adb9aa86b83117d48197abdcd8e3aef972ec2213b3fbec98b0
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:8fde93d45a81ecdee95649a281f80a9b2a0a71952771a43f0555cb97ef7d1605
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:74180dbda759a0f30b9c9321585ced206afea318ddbcbb362bbb61f1b6978597
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:edeb0af7736a94afa9ada1ba7be1254264754a0df41e761f6d53463b5f07fcf5
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:8e6a791528a0b8809d38ce153e80e9e1f19c58a2415777e617631ea7876d2b7a
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:c451d67a6a1154c3f31dee5aa573b87484becc3527ed36a1c553a1013184fcf9
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:9997909581c8cd9150f4581a3aec964691dbbfd3b92a06679b0e795830599052
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:d6c330e2a2b56fa9e75f57c3f75e95096862b6c8ca31069de8f41f64e8481e26
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:c2f128f9001c0c67619386e1a860663cfa8b6b1f790af1ef00670d76c686c4e5
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:ec6699bb6f648cd70065a3849c6bf3a57722d0f6fc87c1a8b582e18bb9e4ebce
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:53daad8fa0b71bf5e362ee44c50b0e70cd976b6b30d425d5e29088fb8163f8fc
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:3857e1d21bcb5fe82ef0d8efa8969b90e150c2659fd115b2e357b2c137b19a4c
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:cea5e74574f8d3ac40cf63b4084ad107d4efff5f5f6c87f1dd655109b5bb0c8a
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:ef3b5088f20b1e0b101f22d307876b87fa9ce0b3248b26e0e1d4e003cd89256b
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:6ea1f813aa546acc9887f809207a7fd2a5d913ae0f42d944d7923620a4fe877c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:dd0f81a803da2b2c520f922039045e2db9b96c61cea26d60eda9c7c9626bc449
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:45a57cc3913b84e841be83daabdc5f5985d55075c0d371af9daffca1152ac0ad
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:b44ea7853c23ab1320f68f8693defb47e89dba2f7301ad46f5e28d71f1fc99c9
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:1ec50edc886c4fcd04bdc9de3e9880e90824741f8d6ae384f69f579fa6ae2c50
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:96bd1b744a5e034cb3831c2c9c45b0ec65130f1ba124946f74633a2795f23fe8
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:8c16cfd74922b28b0adeafd422b7b2dc3896c35d7000c9d5e57be0f566058f78
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:a62635a6a458fb26f702fe77afb8976e23e37ee069bfd37f4c7029841ece8d63
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:34982a06432fbee263892b58d24409e3f2119f649abd510609c8fbc63f7c4953
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:167957fc864966c356d70a6c333b03404c8234e4ece8e8abc6169de86b409983
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:6611d88a0c69650f1c2c9b946ed6df976b3312226ecfac1800bdd4e187ac9629
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:cb3d2fee13d9a82ad852495da7d9a2cf1b003edd39bf1edc34096bbd9005d28b
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:9eb617c02a50e52ff412c97fe2ece275d9a682686bbb127a3a6ce51f6864d6b4
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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/cnv-containernetworking-plugins-rhel9@sha256:fbec311480fc899bada5159771ce6d33ff8adbdd2a2c53e1f08e2bca75b2abac
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:9a2691eafd72990f03f4600e0fac40e1572479493723387c159f66261a85eeab
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:2279ab798e8c18b13c87cbce75e6018a9b5be872666c9a19b4929837ca7784d2
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:65ef0b5b5f2be5c829f9d25a9ef5a0e54505051d40b6233df4353e7761bd2909
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:9f081d7b24658145adb4ba5ed494091be3968cb4c8305f2e197a49f6d61226a3
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:c91fc0b7b07743c58c449155d1fcc43844e0f1c909b058fd1126674978afe5f4
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:e38fa87ca295c7f750e207b5c29ea9e4c784e51a2e9a365719cd6e45d55642e6
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:fad86adf9d9e682e9aff8764c776d2650e78b0d7101fd6c2804a4c445a9daebd
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:95f0ee74ce70b75c23ffba8d400db7018bb5d8b002ffa20bc4326cadb1aa1434
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:dc021c2d95737add38dbe43a961e8ae2ae8245df3cbcf46727b3ad89d8e27af1
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:aa1d79d10ab0f88f472eace2961cc0b83963b13517f636b4db74f9636fbf993d
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:ad84fd70798dab76dd65da6a0e54d34d1b233f042df97b0c2894ce5cba641e03
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:2a4fa36bccbd1750c7ba21d8774592205558eefa10c4a59807d0d7fb255c4d7d
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:508963662b9172f0d5e3d16b91a3a359c45ce050bdb8e5d0ddb99fdc2b44b260
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:80355df8da40dd604f65b897b4987b64c1c7aca77811a4f013659e0e4abde531
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:6abf158997ac1207a2ae7d0589d830a14e5724905c98e84b32a3b41882211e04
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:3138ad3a4471ca69be37fbe50a96be4b89e120de0e2808067ca99ff576f16256
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:fb61c086221a580b2a084611d0163635eda53d584c390f8df52a730e22925922
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:665bd5625630898222a3ecf02244ce31f38f310c87f5f6529ab53ca22ecb5237
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:a1b60487bef71216a67daacfeaa357de08f94294be66187cb219d06645076616
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:ea07bb35db9c047015fb6292608d28572fed17b3d190bb2cb3127e63404be654
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:c370e913c758e0a896a1bf47ceec0a44ae3019232f33ea6994b90ed7f4567c65
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:3dcd47d947a86c87d35dcb26da02dda2b9478bcaafe9c809db76707508353570
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:84d3534ff8027475d41f6dee3c827640905b98dc5251c6a31abad5c7d4cdb2dc
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:22790edf1eea155cf40943609499deb577283bdee8d8cf3a5bde67c7806f152c
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:4cf3eca6e1f958a9b3c14cdb6be536a2b8f11491b475b23dbfee4eee8de8a60d
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:63f4d29d6724055bc857b9113c7ee2cc686f0a4c70dc0600b24b6a51d03b1ec4
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:8870efa7ee50541cdef7a9058cda0030e66e31eeee26209443de888aa472fd40
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - 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/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:18b1188326dc55855da1afe01659fa0ea06fc9f0d5c8a2154f2aedcf49a204dc
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:554c6882d9c1320274c17336f5efd80a615b5a6b97a4383f452813e080ccd9da
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:1fb533343f9eb45062f1817e8be3e46c315887fc24d146fce4d83b53fcdbd6c6
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:591720c7e2301931e160cf1280c6b55bba9de1fe6a38545de09e05be38c50fc1
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:899349fd7dde3ace0171661f61a34d0e794750f16f0e59003073239d109c4ac8
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:6644a1c779f055ced237d73fa5a92abb0b61119983d1dc966b5e5592e58839f0
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:89beb3c6acc06cf04d97ffa7f1791ab380f873b692e5e694b476558693590759
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:2bc541d27e9be750363c3706fd0692bdaa5b16b69efa842be7f16046fec2b8a0
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:7da428ce43d513b042b5f6b58e58b134937071df97f769d8e191ac178a34d5d9
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:1823a4c581900087411be32c46297e8224087ebad0c10adafb1e48fc9fb5af8f
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:14eb7f410c4e2fbd7416a3aedbfba5f45e401e3bd9d4f49b68bbb3bbc47ba59f
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:80192f34263a9a9a8ef9812f7b8dc37090ace003e257e74db58902f4a1299887
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:013b3f599fd23278b88ec362c9b89ca3df3f5820a9820bc6ceeeff76f1ec1a2a
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:9451fbcaaf9b486168195661f3b370a34656bbe856133644cec7364fb0f9327a
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:ae01e86a9f67be13e9072b9491b86c6fb1682f153dadaf86afdd8269c04e8e58
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:bf5236671c5f149cb69c58acc3204a3dbd5531022342b3ab4e70908c46ed75d6
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:2efdb15604ea5ee3b71dda28c796ed67651e7d3a2811739542f702c285e8873d
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:13475ebdb09e49a5f33cb255491226415752551adbf19f1f11555ade84832490
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:6473ce9becf07dac29d2bb597fb1c9088475f2ce3d71c635ac41b13ee6d620c5
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:93d4db5d1afac1364915dc2284c6f58a0d4e1f9cd8395d84177dee0568f8fae5
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:b648126d95b88bf7cd346dd2a112fb77e2686d899ea51fe1090a510bc2ec8f24
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:5bc8eba190a09b03141b866c50c7ee244631e2d7e9fd76c6fb3bdce933b20f9c
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:304b1845e9b7bf2b443b6c889e2e37e446908f02d70f9733e4206f9799e9e963
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:244f5df211adf0631afdd76786d98b2bc01bff8ac11d1d47d87e3022d999ec47
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:ed454addfc02bdde63bfa619f53d036128d107cc1cff3f595819521be1671e59
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:4d5457ce137f9984f3a8227be66b51df7ca24d2cee950c7a62fe07e4da8c957a
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:89a4a5077410687afaeceb73af8c43d6330661ceb34225c72a7a18785321a6e1
        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-rhel9@sha256:104e8a00fea252ffeb7fbef678be0b2f57c6e0cdde8dcae0134c2a4d681cb63b
        - registry.redhat.io/job-set/jobset-operator-bundle@sha256:1f8fd0e1c6636b04dcc7cf4cf27d33edd70c31db5b6c5fc305e415df8a5b10d5
        - registry.redhat.io/job-set/jobset-rhel9-operator@sha256:e5b874a603a2f6cb97b4312ea2b00275cc4304773bcd9fca0782f1335576cd0b
        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/openshift-serverless-1/logic-operator-bundle@sha256:5fff2717f7b08df2c90a2be7bfb36c27e13be188d23546497ed9ce266f1c03f4
        - registry.redhat.io/openshift-serverless-1/logic-rhel8-operator@sha256:8d3682448ebdac3aeabb2d23842b7e67a252b95f959c408af805037f9728fd3c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        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/cincinnati-operator-bundle@sha256:50e9c88ca31182c54f9c4bc6682642a5115fa280044e6c125f99626c69d999ad
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8-operator@sha256:759f4de107a5b429933c5e44046ffb4ed75c674aea75440513a6df8fa93a83a3
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8@sha256:a9468a662babb272917df92bc9c827535b4b37883edb440b6d2d7c32ffb2145e
        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/kubernetes-nmstate-operator-bundle@sha256:c6d75810e8565ff5ec92b0429eb2936a381b88d3ba33d918c0b0e39399958c0c
        - registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
        - 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
        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/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:4ba07c476202c61c9a2b59414afd6113a55c5c8d73cc4d56281943c81f73fe6b
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:3e5d34d689309eaa346b27ed9f0f517199d82eb9410d1bcc5e99dea367e9e242
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:012b24f6713f98358ac044a8b5936502af22370a032cb7fbf17edacbc5e165b7
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:7cf8ca0c015621c90d8fc62629ef8711571d5292e2d5ae12a0f541cdd9bd49b9
        - registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:d1e5461db8983a13f98259152dc3cfa2aa677c29f799104190e5cefa83cf97b5
        - registry.redhat.io/openshift4/ose-cli@sha256:310339cb93bca052f20d897f3fabdd608983e910af19ec18d1c1c67833ee3cb7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:3a901b54a9d35d38b5aca275df2160e3190a874e139fcb606b9969b38284b3dc
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:3fbef82d1c5da8da1606d1a2d5dcfd20000da574737eb32b772d4f0123b179cb
        - registry.redhat.io/rhpam-7/rhpam-operator-bundle@sha256:b18c746b4270819be88665dedae34c7635df44d492e989f433515dee0d992384
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:a3e44e81b1fe4bcbd3c1e1d7dcbd6c4fc24d9eb2458d503675d431b973b9d080
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:4edac282119898ab1395030eecaee584990064e88fc8e65fb999f19ea2ef3f8b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:dc24aa382e02c4ac058d4b824a21f0e90a6259d6d817d0341b2a41809b5daa78
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef9165b4497da980bd33c935a638179f7e1969dc227668b21cb79b94ecd10e51
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:a94739f0e52ae43bd73f3218482daf0199b6eda367a2e510ecb7b64fb7ba9942
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:228c6ab5b83e215a98f6eb76250feb2ae3096fd21398c44e5b2701257c9c3493
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:bd5c6586b4859dec23ad9530ee98bab33497ab251d544f863fc0af01cbd45101
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:32912270eba0f2464da88f315bde8bf1ef5bbded814db156811d7a415a458f86
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:4ee8b93e87cb8012b46324a35e3806c6f7a72d6b27292cf5180dcf0f5da6810f
        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/rhel8/redis-5@sha256:8d7e66927ce4b3050ca15ab4df4dbaeb593cb855e16fb0a6f5dde950e9db7db9
        - registry.redhat.io/quay/clair-rhel8@sha256:af5e2fd1543365b365b1a6cce00b86e44fe5e66cde6491e9b113324c21f629c8
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:0e6bef51caf479074925115fa11621c41bcada375cc1925d0511a73084b93543
        - 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
        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-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
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7fe408a1e428b2d0660cb578c1dcd4b961f838e37166fe7b21b2bed70d288594
        - registry.redhat.io/quay/quay-operator-bundle@sha256:722cf3c05eb5663a737cb1385b971b6d1f0c8b2595d5ac425f7b100c25e2fd26
        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-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:907dd22eb16925813711a70a3d0df30963a3d1d0c060ca9b4f071ec101f14b87
        - registry.redhat.io/quay/quay-operator-bundle@sha256:91ce9e64184afb90b00360c64f5ba37d30130ab0344b2439b93db15f2b35b74d
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/clair-rhel8@sha256:3967b2027cc8ee045da7c6a214c959f8651fb873bd60b81cd78f167e57ba95a5
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:56c4668b72768c2b7017215f547039b4783498efd89d17dc3fdc7d0444cc8ad9
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
        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/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:3746677ef1cb0ddd4f237ab598b14cf0bc76dcce080ffde127b5bba87ffe6693
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:11b8c9d64c42f0f0c7b2df491bba859d0410666a8ef1d2fd41eb77e4ad9d2dc8
        - 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
        - registry.redhat.io/rhel8/postgresql-13@sha256:35d86936c539007a78a89869a14b87b76788fe117df442a670f63936b978ed5b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
        - registry.redhat.io/quay/quay-rhel8@sha256:7230fa1d4970e877cb6de8716e99a9bd43302c0ff23b4501f2aa806a8d496d9b
        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/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:206d249da9c156fc7b76eacc40759b3accb82dce85aa2bb2bbd7a33af52ee104
        - 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-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-rhel8@sha256:1076d78eba4bef63cf45ab04c1dff52f0407ab9e16fb4729bee7c1ab642f59b7
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:b3a950f2c8a123b9bcba240db407608dab6a4fb00cb9fcc6e083e07144928390
        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/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/clair-rhel8@sha256:3af5c1b75dedb37fb8c7cc3500882f7145314d44735b0957dad7d588a0cbf825
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:92ffbfe625489fe0b00e32a144f76935a4c36d1835af42d9b45bc3904760b085
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:b3f7fa8d48a772171dfb9eb893bc8e51985147c7f44fb8b1351325dbbf59810a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3bda08789b2ba41154d080a5f013ee0e2406d60f8414e63be451a6439555cc1
        - registry.redhat.io/quay/quay-rhel8@sha256:f112ecb55942c8785c4aa20162b74bac904634a87bdc8b9755873ef19eccd6df
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        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-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-rhel8@sha256:33e984892650d315065313fcb5f8808e145aadec5a287219c7031d85b713235e
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:43ef8adddbf9b007b6e2396f53bd6a5475150d28c2f4254f031a0fe6c7de5826
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f16c0a135dd7380e2a489f963b38bd76a63a973f482d06ece8d3656aff223703
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:a12a0918f6dea114b0aae231d7119a4acfd0cd297074d895f4ecf190d2aec43a
        - registry.redhat.io/quay/clair-rhel8@sha256:e11e8a819d17bd14c67f093b5303b4958855e731f89ce67dcca70fcb7b77f45a
        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/clair-rhel8@sha256:861be31d30142bae125cd059bb716d79b28694e9c4336333c68adf4a3823b61d
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:873a3daf1dadf2438eb96e151072326c31ba34ed48cac041614b604413d5f8e7
        - registry.redhat.io/quay/quay-rhel8@sha256:aa8c9f7b6ce57441ca1fe9dbaaefaf2bb83fd44aa367647b663bb822bf890362
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:956f3110f944d880bc27bb6df9472d0804cd75f5dcf4ed11bcf721e9d1d4542b
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b499eebed32c0261db414e307f96f8aef9e743035544c80c048526e7ba4fbdc2
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        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/redis-6@sha256:686620b9acef6dfc3fc5e8221ca4d7a00c1fb102319352e7871fb9bc0ea127e3
        - registry.redhat.io/quay/quay-builder-rhel9@sha256:d3803200676de5a10f81539d3cb65e3d1cfad4fdfe7171284cab758bfc1bdd6a
        - registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
        - registry.redhat.io/quay/quay-rhel9@sha256:c855425208f7f33a550d216328965fdcb3abebc3ee28fc0854bf62c58ce07266
        - registry.redhat.io/quay/quay-operator-bundle@sha256:000771d05a6151960a085bce375f090d706c48328009000437dbc5a8711c9ac8
        - registry.redhat.io/rhel9/postgresql-13@sha256:5105fc7494c8e9886204951ea6eed0a04dcc638ea65a2e1c15df5ebf99aae356
        - registry.redhat.io/quay/clair-rhel9@sha256:b9a5096fef74999c34dfb721ca1b5e47623cfa21b48213f60a5b889894d4874e
        - registry.redhat.io/rhel8/postgresql-13@sha256:3e3e87ba0081e6f2d00b7a0f44f1b7fe6465c3c8176503c5f967237a949fd9d7
        - registry.redhat.io/rhel9/postgresql-15@sha256:90ec347a35ab8a5d530c8d09f5347b13cc71df04f3b994bfa8b1a409b1171d59
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:adc9eb1500491144a259fd95c14237be15fa92478523bf33769a708b301d66cb
        - registry.redhat.io/rhel8/postgresql-10@sha256:0b9dcbac4969cc755505ee152369f23ac891a0e4030e9e2519cae25e32416500
        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/clair-rhel8@sha256:cbafddd1eb50c1c0f9159ffafd86f44a8c0b976194903c96c6f144bfe62e749d
        - 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
        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/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
        - 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
        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-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
        - registry.redhat.io/quay/quay-operator-bundle@sha256:53fcddadaa31a5f7d74c38f0bbd0d80b4c09796a580ef8494f60ff82fb6fe6c1
        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/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/clair-rhel8@sha256:f4bb5da4f6ea525d620c94180548603e1686de8b85b9c92c0a8c59840a1f69da
        - registry.redhat.io/quay/quay-rhel8@sha256:f713bd016f375427a0a348e58639622cf21560c05d1b82653f2c47493fcba186
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:571d88c0dc93c9194a5242b02101b7d77871d2d9496307df7dcb9dac971ab444
        - registry.redhat.io/quay/quay-operator-bundle@sha256:3c1f25918b505ec71eaf93d2a0b963d209e36d847e7fc48469f9d40b534344ae
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:94f7e4f69cf8bad09b00ffb85bcf621f87df000e8a6077ba49fca88997a163fa
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        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-rhel9@sha256:4185a2d8f361b3bafbf677e35229c2b58245d3a52dae44d67b5990b62ceffb94
        - registry.redhat.io/cli-manager/cli-manager-operator-bundle@sha256:f84f5609ed0c329c810bb85d66f24e2be6b0ae421c9870048d6af6079f01abed
        - registry.redhat.io/cli-manager/cli-manager-rhel9-operator@sha256:e68b034798ebb1cfa7e17c055dbeec8c8aa46afa7d1291a7a2dbecbb691f71ba
        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/workload-availability/self-node-remediation-operator-bundle@sha256:3bf8ef27f9a7f50c7e9fa066cabe8927efc8a3a890783bd9b60156b4ef417a77
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
        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-operator-bundle@sha256:2f72205cf81cd26e0c4d7b159e72f567e84e69596aaff92bbf52bdfd2d7b9dd4
        - registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
        - registry.redhat.io/build-of-trustee/trustee-rhel9@sha256:da30d5c78cba2fa4b595487c500ffefededea4ff2f4e9ee4d8bdb7b13d8aba40
        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-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:29690144667b3753a7e76095e136d6fc42325270e7b9f22f97dfd411439e9f54
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:96b77663961daea3a336b97e34e9412281bfb2727854dc970a69edd029b9af85
        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-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:5170255ecd45b9bb7a70abec0f6eeb0518bbc2871de759e468dd61a80261c0ad
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:e44078fc6073a79168ed52922b370773b451d69bf335aeb91d26a1462df21a9b
        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-rhel9-operator@sha256:49726cb2702441305e8047b24054575170fb595cfe5ebf815cdbfdaa957b02f4
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:9a3f5b6c403fb84c9cb93c9d7cf902c80990196983607c8ca568d4b558938e17
        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-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:68fe21212c54efd1c7a1e6f68e554722ac7cb8ffc3f5d48d608ebcc0ac8be921
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:60ee347425c6cfb36f0e1e834b33cbb3d77aa2d6c89ac513216d0b9fc55d4b52
        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-rhel9@sha256:9b888c75a1ddf274b1f0aa053ddbbc9acc3270417712456ffa29ef81a883b38a
        - registry.redhat.io/oadp/oadp-operator-bundle@sha256:d998d58f1170bc7ee9d9c81f4bbba50ac1f65e8fe60fe81cd74166beff6f93c4
        - registry.redhat.io/oadp/oadp-velero-rhel9@sha256:dd5897b1579599cfa8d8a03a1c8d3cf68e3927c4ba5dee4e33c2a2d4c9e6ed89
        - registry.redhat.io/oadp/oadp-velero-plugin-for-microsoft-azure-rhel9@sha256:c2dabbda67d47c43c323d7790da7e091fb9715d2e166ebfc14e2e026745d4b6f
        - registry.redhat.io/oadp/oadp-hypershift-velero-plugin-rhel9@sha256:f8798364f94bb1bf4db264b0439c5a280b40cafa408c47b4160d9cc9c5d87e53
        - registry.redhat.io/oadp/oadp-kubevirt-velero-plugin-rhel9@sha256:77d6057b1783872ec65d7d6a88d8a1212c38aacc982c7efd46ed2eb77b5e9e70
        - 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-velero-plugin-for-gcp-rhel9@sha256:f1ebdaac4359d96d524ac1bf36f5b0b3bcf7d1bbb7299bf8d6daa55dc2bd2c17
        - registry.redhat.io/oadp/oadp-velero-plugin-for-legacy-aws-rhel9@sha256:50262b769de92249219dddb3a1ffc37cf187cd8e76a1f912459e8f1bb86f4c84
        - registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
        - registry.redhat.io/oadp/oadp-non-admin-rhel9@sha256:71fe65fdaf632c8f51db7c5ca1692f0fec79304e68114a91541b38f4207e70db
        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-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:246712ce23cdd590ff83d84e9800b4ed761886ed5bab9f9cda4125a5d930e7e5
        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-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:56db2fd54dbe982dde6a4558b664b19a676a8ac99bfbc8082d097cd6d71a03ea
        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-bundle@sha256:c0a8c5f5454426844c43f8732ed512ab30b5d4bd3e799fa3f133670d0ea431d5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
        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-bundle@sha256:46f8c0ea6e383b742ab9cdaed1c8f624c2cf405bb1ce39c0ea6977940d52de07
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
        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-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e4ea95a86e77aa64da0b1800f00c2e0e598776cde7cfc7bb9941a60bac207ed9
        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-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:aca3d91b7b9f8c1e8a1e0d045c42ba5f27444e0c1c0bc4a87c697b428c2fff78
        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-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:74f0cf91e2feb60fe794f71b9f56fa8afc60e53379a0aef104701dd6692272e5
        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-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        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-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        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-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: 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/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - 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-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - 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-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - 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/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
        - 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
        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-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
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:2d9da26bac816af608979a034a8cdc24b51e04f0807e177fc114f55c0e633650
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        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/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
        - 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
        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/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
        - 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
        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/rh-acs/scanner@sha256:2860ed271da6064149bb53568c5ad60e129918d55a2f244f9ade4a0bea4c4933
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:ad88773ab141f45fe24c61e83ec736aab27f652fb82ca2a85fee6f885568c5b9
        - 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
        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-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0bb76363a3a25916dd4493e177e9b2d36eac9633473b07fe0fffb853fd072da3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9b9b9146d9683d6da0ff2abbc8ea82b96d945b7a8c3740d72d8c018fb2b04fba
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:f0d2f5f11c2a96d34d6b4baf249cbf821fe064eade73c3f95c22f3c6981ac4d1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:081f2198ad70bfb2ec66153b50b48b950b9a5550ba996de413c5a2aff4052783
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b5fc3dcaa72bbc8dea005189c940e1cf2d00c94a6cf7676cf0e1790e1191d45c
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6a10a4859527946f61f497ff84b80f973cb7be5982d428423836b5aca81a1f5d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:105d10bd50a6062c998ed107dea388dd78f0caddb0b57713c8692b1d07042774
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c9d0a5a2871c24c0b1058e419f2b090429363a319856397855412fd2c0037395
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:711293438bab35b17d2e1f162e7f74f667a6e16dd32e45122f917b6817fefb4e
        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-main-rhel8@sha256:2afb2823edc6f3434e18db60ee37381b5b79f51234c1a261b6d0f8ed74cc8b63
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:297e7f863106c6b41f882bbd5b691a12c797c24d832473a04e604d4639e4a68e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:867613178d491f416e57975843817251490c5fbca2fc69d8b55b169bea675279
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:77f5db63e17b140a8d6b84e3822fd77463035be9c0c832b55b4977696da13ccc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:da6dd486a20fdba61ea12d2c77ea299d9795a9f22d9057d65ff992b1f5896e07
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9ae03669cfdc0f4fe56b021d911edb17159c07757720ae30a1f22d7f7a897c07
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:f167e928740d1c614e26948ea58f49e569f6a4fddc438cd0abe52f60538432d0
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:8db5206532e95a7ad7cb23f389155d41757aaf5f445ddce92b008a06627d3fd5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:cf5629823f2dd583495bcbbcf3b83b4f29f855ace3c388f5cb7b24a6d34ed267
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b254746ed3faa1f1cbcafdf1343a1957bf0214311b36f4e892be3000cc2aecf3
        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-docs-rhel8@sha256:e71f2f2347dd46dec790405b1bb98d54a348a4583949f142f5703be9a790f96e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:6b14e850cda9a54618847858292ea669abff599a40692e27fed0e337c4a60526
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d2e827a209840b7197960c8115720972237532eb9cf9d6fee7a36107053408ce
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:b47c96af1c9ffe4d8728da510a93efe21adc221225fe2b822cfcace6c6672ba2
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ee55a233d2a8fd77d89ec2c69f357721c7debead6470a9f494b3cd6a001829c4
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9b35ae6df2c19935783735d213483f3fcecead2f49f873a4f7844ef9fb5c7f1a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:df8cfdaa40b50ff2f2670d97c2115b47ae4bea443ae2831caaa468dd62f3c75f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6c32b86ed8bc18e384706eb6188406e66910bf34c8869bd155a60c3525d0fea7
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3d7c8b77671740e324ee6c309a84bbaa4d925e6750979fe4e46c561bc79f1b4d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:dfeb239931f7a33ade5c829a102cabc01f5c348e1aa35a7ddc24757cfd549629
        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-collector-rhel8@sha256:4d8bac9b3857af6ba351c7768f70ef30ef7cb99ae4df60cb226b5a793353a052
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:e282a8e5e606003ea344d44ac5ee7699563848f7160eeae183aa58ad740e0e94
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9bc25e81c21cda6d8b535d8ac67c1286fe57a1596001850e730f8f73bf371111
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e001b9f844a6c298dd74f1ab683f3dbbf0ad66044cec419c373ef4f97d47be73
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f16f92e074f7125b88e9e2033c7c12b44421145b93d040034fa4688626869af1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:df7b41999b542a477848823a1d0e7e5c29ae1b00fbac035007a5a1f33fac139f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5fdfd3690af60bd5ecf04741cd1f73259491da501700b066120976960567f0db
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:7f279bb6e0f34a5208d8711ba4d7b62c78f08b683815ce33f6aa28c23c4246da
        - 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-scanner-db-rhel8@sha256:c3ec88cd99908894d0e67153779062f90ac1b007980d66040a79b2be13798a10
        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-scanner-db-rhel8@sha256:cd0c205ee44eddcdf99b84e80fcf4403851d956efc50532b9d12013bafe44988
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:622f30b7f591194d86a5bf95deede0225e66f7b624db197f6289a5fbbbe887a9
        - 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-db-slim-rhel8@sha256:0b69595405e4e598183bbf4197ac5b7593724fa6162413f225aa01a542af18c9
        - 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-docs-rhel8@sha256:cb5df858e0c5cae8f77b285e23daeb83062bd72570c90ed5ea3ce4a02d2f5f08
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d56a00b3e20e60b7169f5c35d03fa6a1bd3b9980dd3ebc9d89d759e1d6d20ad2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:cd475a6c2356d63cfe736a11114de7fedfbd8fdcfecc56224a00b6c819103be6
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
        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-roxctl-rhel8@sha256:e6687c12d070069f655c17832d94c619c18274a259ccc59715036f9908e162f7
        - 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-scanner-slim-rhel8@sha256:c020a80ff82bf4d9b5cec3eeac5de9990de76041e22c444e664a20e15c46ce3b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5df359156b01505ce43e5f14c3b08722856bdb86f3d0d9b4fba785a2e580f346
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dce5db4f162dd40c09cad114cb802cd6d7c72d0c6986581f2e74c977493f75b0
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e4a27d3ffb173c87728fb637ca7fde92a9e78ea9ee3edcecccc2a5e3d3748b8c
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:459a8d91beff91638872d377a8b82c279ad2905ce3f4ad4bfc00f6822418ac57
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
        - 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-scanner-db-rhel8@sha256:7bf9415aa4b0746d11ca5a59d4179bc382a0fac4ded969f0c4294171fde27d58
        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-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - 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-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - 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-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        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/openshift4/ose-kube-rbac-proxy@sha256:cfa10bb6b461f302674f185b26c8d6efaaeba7f3f65d2cf05ae1f069aa2710d3
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:4c848eb7465e928251e05d32ffbc93cd14e7bb77972d22b8721bd6eaa4a93d2f
        - 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-main-rhel8@sha256:c39621837cbc8419d187a43a9575ec8cb4021c58ea1b56f215003d7264eb5d03
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:139d80d398e7e5cfc85839e3039a3630b48c7ae6650d755754430fccd94d6a27
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:eee1aa054d4d15b23be293f31d3ea659e0ffc1d05174ef89a6c977dd3d4377cc
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0aedd8e865f72ffa8b79fd2bab48974caec3eea3e3a6f77c89fe6dacb8947057
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:08f537cba262605a0eb0a510b6faf78e3ba26465f636d03cc1f7a6ed6b40d355
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:a0d9cd31d953aaf7e84f5a39f405c5aa2ea62e68d6c728a936ca1ffc4dc1b93e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:09e79b5db8977520f9951cc43c339c8e40b4659d7da513347d5a88b2500f809d
        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-collector-rhel8@sha256:01b9f9798d3ecbefe3da1ac2ac782e8e8b930e7eeceb82fe3473b5bfc1ccd40a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:762ad216e79be0837e98873202b0072c7fd399925ee94bde57cc61c68cbd5f4e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:34694b9f4fe7fffc0c547be4e311579b5bb0c1fa92d8257bf6d1581ffd655c46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b26133843687cc50e2c52d6067d8b3369b5cb28dfbfd15dd4b6062096673195a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8760d6dc68c86f0c5b53d8f0bfada0df012f80bc8e0023ba3522fe6829a05a41
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:bdbe08ef2d01b114702780fab76905e6eb1851684692ffa0a4c84604bda3ddb3
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7ac504b7824d17bd7ac55b1e59c26be308506f315a0ab0d8c45d3b4934c0a16c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a8ad0e76ce4cae9f9b36aecf125c4ed56fc2d776fe3df113d41bfc1c2f8b3602
        - 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-main-rhel8@sha256:364c107c34694ca33ac724de78db3e41ee55f9098d9ade0775a51b11f1533065
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
        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-main-rhel8@sha256:3858ab936d4626a11bbf895d41bad181364ee5df3312f6dd29ebeb9b7d31ec77
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:2f326cabf03f780a3e6120995d5442641764641f62430d82e05edbe21b30c7b2
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ff27f03064633d6d08f8383649069e39c868def4aeca8f2622750397e049d0ec
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b82f7f654235688fc07fb037422a73e1106e27024d39a68ef7fac1422b69496d
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:08aebe6e8275d3314b6756d522ec568ccdfb9c52df98c9822f187f6c5a3af19c
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e2b07cb7d690477d78a2b8e1875545998d4bdb946f80dd0533a14187da99dbbf
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:4b35f5f39865238a8e95d3cba7ebb5f15ccfbf6a2563c34f57d91a0b5c927066
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:59f1862c8ce188906499f08201ae05deeb47bd4fc5eab4be0386ca44ec065da8
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b5a15f2985b114bf9bc24a0d9942db5d0cb818e60fd15a2f9094aa00904cce77
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:e79a5e5681ebfe2d6349e2763ee0c1fa521b20319846958e402d23229b1f257b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:12db245af3b8475c9b5680bb0035c566109819e05cfe62bd1dfdfb5d6ed25bea
        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-roxctl-rhel8@sha256:bdf9785bff51194636c6e8a518448c6d12a297bd31c4bb2e79d07084409c18b4
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:5092c3fbb4a38c06a2f42d125dc718ef0e1005f304ad8046afdd2a5e7ccbc580
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:2c35cb6f518393d002edd2bf5f714c1d053cd0fab55f6152a2f35676e4979202
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c36a557c9dc2ae4479c432933a9a4dbef38f2be53360a68a5b6befb614d01dac
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:10d0cc82b6eddd089f3a7af37b872c33248513d0b4d3f094b6f62c01f4460825
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2bb643651c8d51525223df3b2b675947174bbe9f1eaea8688e1fa83044cfa41f
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6b55a25eb3a611c648d9be883828834592229c16f4166fd28ef40a25fc667061
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:30f9384244819da013358325cec364bb210b3b33b4cf9680698531fe50562aac
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b7eb17fbcf6c4a6e4205ad66f1ffd9b10a4634f6ef5045d407c266566b1f255d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b0c9b3858fc0547dcb4eb3065dedd5bbcf1e1f6707a8ab812ed06882d4f6d6ad
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:9fba889021a876ab627ff8c496e4b6c46c221c61142cd0c76daf33c89762e2c1
        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-scanner-db-rhel8@sha256:d6b4f8caf342b105c8df14c5c9180cb36123e08d34756ee8fe4f2f76c34f8064
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:763e7568704971cb4656727dc223374de13e82b4304dd3f5387ddc0f4e42b8b6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:65707fdad55767ff5598a8d3679fd0779a37f59501e58971b81bebcb23f1f9fc
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:664a5dc40dc1fa06c47a11e13b0ab5e0612a981d7b69bcfb29422abf3d1a13b2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:ba6e25a413c79131b966a097f72c36478933ea52deb55a62acda7011a96b3983
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:39cfd01236e905034f6645a73063427436c14e351e0e0bc735e73e62aa5a1c3c
        - 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-operator-bundle@sha256:123c0108bd7a190dd2accfd21786600f787147f040e57fb5f840861e2caa441d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:76f9dc2e2ee5595c36530d97dec216e2dbefada2fe0747e3f6a3a725b75722ab
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:0df4e95c7406aee7812d145cdd4d8c61cec32857fd2079dbc4244954a9d8288a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:183c75920ab8e7cb947cb966f1543e39b6fdb5e1bb0caa1b0cf5f89671f0328f
        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-v4-rhel8@sha256:1817cf8d2c08b04391792321702ef53d16a4b1ca06459c00c9c053128f534358
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:5914548f6ce2160e92c5d96580ffba23cdf1ae940c1f73f3f6424d15c6e97c37
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:41351e88688d23a443ad4f141caf0433b2c2789e6a1a85b4f5b36abeb5656bb1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c2656b794ec4236e36f48f71bf26bdedd9de27fc4acef39deba2bdcfcddab03b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:fde78d34ecd2944c7c16b4e823c76b3667bf6c5b468e9991128ecc4272ec0e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d928600f75461465598a10de8df2495a275fd5232a92b078f609d1f5774eb778
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:f07cba0738897e0e7ae74971be0470ce2a855657f133a6e1cdd8a7092f6151b0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:cc4b329cc795752ecbb178d2e4efc152bde54b04181334eb5bd70304c3354cad
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5109b304eb9458f97af85c2ba63e08f51672fa3f9406226b7f357b86b5828dc0
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dc7f23341c8b209f1846f29f889d00ef232fb58da9d5b4bd561f3933093b2786
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0ff948b5517df3773cae2df02b708c348d8707409899b1de4108588e31601c0c
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ed33e7396357f1db03a065573c020846a5872b12a21284439770686689222434
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
        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-slim-rhel8@sha256:899da9c23000bb821bc9d544ebb56bcda4f3245ceee5b1b9c12d09f580b4b9a1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:ffe41363dc00b05b0daa0c6d16efb30e534086aa4e3d7ccc599c86d33813138c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:713e61d3c8b55de1edc9d7834d3e8576718e1327665f94a6b58178fa7496c0cc
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:16b61ca1b9ee4e0821e7fc82fe4def75ed22950e502730f5704ec4fe63bb2e59
        - 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-rhel8@sha256:b5cd08349931669055f03d21331499ef2ea04597f8a90fb201615d43000271bc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:90c47c6f95571cfcca04aa4e05a18befad75c1b44a6f3a055fcdfdab749d29c5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:6da59c5b82625894f6efa3fa0bc5ea0378edd4f95cf42dee772e9c8a565dba81
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:19db8c5d2425dcf18ae63b025f946fc46adaec0578e9505415cb585797069e95
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8fad8ab2efdcbc99d9efa736a90cca6f236f0a9d45fdb355ae0b6b4dc42d77f0
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b630d53ad0b862151be7e14f0483ca5adac570216deae66f60e75af87a4dfd46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6d6b2696a12d49cf3403e338a0e028187473b6f43ef2b0bd72c7701200ac8e2e
        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-central-db-rhel8@sha256:ee14e7361bf64117af506a99906b3ae43a2b34c78f6e80a924a4419b047beadd
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b55eae54dd5bc1bc58e9d52722a5830f8ee73bd59cdd0190147df8145f5ccedf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b6f7cc10247ab111a4aea231858b4f6fd17bfd4e4b4e4bd62873567ab875fb2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:19b84b221ab9ce59fd0c8fbb4a713ee66304fd92822cebbcde0d77496ca82b0a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8b24cb309fb5dad63d92605093b7e1cb659d9c0c1f31f6d5a223746f25dc5e23
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e7106f927313f2e0a08c85cf1ecfd1338d222f02dcac6c40846858a7e0c9c32b
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:b3b498320cfcbf06da095f2427814d7f157ccec870383085be733ad7b6e6ccba
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:6981a243b8e6f095cbcabae3056012e9c60914ac42cd795c4163f4fce64a6aef
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d45d0e810330d7c95c2e4dc2f1bc5c5613f06ec09b4061f2874c8837c73379b9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4e48a0441240e9531e1490079e19edd65526b726b87bc5613b3cc62e3f59c1be
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7e1371e5e0b53983ca615309f44f6e4c124874ca1ae8a0fd4a59a470eb6a15df
        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-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7
        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-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - 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-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        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-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - 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-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        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/cryostat/cryostat-reports-rhel9@sha256:f7ac0c925c4728e482efc5f553c63a08e2dd453927e5eae606f83731d889c6a1
        - registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
        - registry.redhat.io/cryostat/cryostat-storage-rhel9@sha256:89bb337dd42d319e1fee74ac7650f30594461b7c56caa8c52f2628372e19ee3d
        - registry.redhat.io/cryostat/jfr-datasource-rhel9@sha256:b6c08667d49f70c3ba26a09a62a6224bf8c5d579be1988c0caca5212fe7d3d7a
        - registry.redhat.io/cryostat/cryostat-db-rhel9@sha256:1715bf1197a9a95f8f54ab02ca167448c1390b385c901645b062d066f0ca5459
        - registry.redhat.io/cryostat/cryostat-grafana-dashboard-rhel9@sha256:6fa1ef9bc8477162deda942ba4ca3f79b87928ad93ebefd4cb25eeeae0a0b33b
        - registry.redhat.io/ubi9/nginx-124@sha256:f3a04b52db496c383a00252832d8809baff203145a53c35cbb71c3ab45cd8a10
        - registry.redhat.io/cryostat/cryostat-operator-bundle@sha256:b634b9e8b54b89b9dc2119961b63d0288fdad007a1c48cc12b05595ad97fee83
        - 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-agent-init-rhel9@sha256:94ebd8d92359c1cfa18f9d3ffb08df02af53253c8b51d578b89c644806bbbdc4
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/cryostat/cryostat-openshift-console-plugin-rhel9@sha256:d64f56fcaa6c764edb1bb43c8a71af43c27aba56e36c8bac812c40a725a53ddc
        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-manager-rhel9@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-postgres-exporter-rhel9@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        - 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
        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-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        - 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
        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-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
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        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/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - 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-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - 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-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        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/rhods/odh-trustyai-service-rhel8@sha256:fe17d6e07ebaa088f274dd8b5e83892dacc11cb336065b06582a3c055095dba5
        - registry.redhat.io/rhods/odh-model-controller-rhel8@sha256:fde989817cd1a6ec8eb408a7f6c73e28ba043ab2d88035586b1b7e55fb3405cb
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhods/odh-modelmesh-serving-controller-rhel8@sha256:d94395fb251e45aaa73d09bc6106a2947c16b90d87fc3b64bfe4f2f600be5841
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
        - registry.redhat.io/rhods/odh-modelmesh-runtime-adapter-rhel8@sha256:08478a1647d0413783bcbcd966a73b444b580464de46efedb39504420f22053e
        - registry.redhat.io/rhods/odh-kf-notebook-controller-rhel8@sha256:cd0ab8d70559be6074fbaf1caa1d50f8eb75e1bff1a22d6d69380f19190df0b6
        - 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-dashboard-rhel8@sha256:b98171c5543815abf7c095fba92796ceed9ea44bd8b78db143d2815c6bcfdcf6
        - registry.redhat.io/rhods/odh-data-science-pipelines-operator-controller-rhel8@sha256:250db47cb873207cfb75c7e8a2f0de08b75b056a72db73362d2d79c08cb7b185
        - registry.redhat.io/rhods/odh-ml-pipelines-artifact-manager-rhel8@sha256:76c67d7015a2db6965219db6533e0cddb5b7cf699c88df3ef81155f9c192a3cc
        - registry.redhat.io/rhods/odh-ml-pipelines-persistenceagent-rhel8@sha256:857a8eb444375505ccb34a11cce69c1794ceabbfb00df06933d7f12cd187319b
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhods/odh-operator-bundle@sha256:b637a02d23bd8364cc8914421049eb60169c163ac70bff2f33591df1a1193002
        - registry.redhat.io/rhods/odh-notebook-controller-rhel8@sha256:753994fce63802f1e1121990a5c1dd722216446abee54cc1a7c50ab195134414
        - registry.redhat.io/rhods/odh-mm-rest-proxy-rhel8@sha256:8d989f54009484d7f43fe79d7c37757418fc3c15cd4d7e80a2076677a9645bdf
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhods/odh-modelmesh-rhel8@sha256:3827221f84d3aa22440d6b364b990a4ec0666dfb5963f174f7ed518b3650d223
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhods/odh-ml-pipelines-cache-rhel8@sha256:33aae32e3d348d382906f6e926281852f54006a94d7bdac188bb33debadec059
        - registry.redhat.io/rhods/odh-trustyai-service-operator-rhel8@sha256:68471555d0b2bb8150ebfae8d4f3d1dbdff9c5b961ff2305ef23ab7514cbbea1
        - registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhods/odh-codeflare-operator-rhel8@sha256:2841fd3051a50a1b0d9e3caafa20a8084b5c472d49393b372828960dbf156674
        - registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
        - registry.redhat.io/rhods/odh-ml-pipelines-api-server-rhel8@sha256:be57f237df156474a709667fa4fb4aa142118e3459963fed56648c1cb2e38cd6
        - registry.redhat.io/rhods/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:c5758102609821a6fdabec0277e03c4c728f82176093d1ade0570aba5f3cd8f9
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
        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/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:fc98ed817a4e9ab84e2a66063987304f0cdbe6e5620a58a7f25cccd61b34ebf9
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:04859c878ffcc8c42550a98be625ac52212f9b79a6fd5b3baeafb3592926cbe9
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:e68492a6a75cb83be0a968b832c1478b97f14e661376328085fd5416a08cbc31
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e9612ec99daa171c403b5ddf37788526e5375b83987e5de9b1ebe519198607b4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:687c8eeed55f021ecaab1307f0e88b5b16d91f72d63b3d7168d7bbee90e8947b
        - registry.redhat.io/ubi9/toolbox@sha256:7656f815a0d13ed37f56d11635559a87a3d00840253755c71b644b858f67d556
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:cb47e165935f0d9d3c88088689c37e68a69519357a20d3c52ab6f71240dab507
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:a88696cff8cd2cc2e295c9ec082b7f25f61dfc9ac12f1c208529ff7036d5af29
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:4c57dcf4df09fe0d03578cc8b9a3ca2ea485b6af0ca0203bfb85e640058b7daf
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:c3e283c0536266195dd461042ca0036ed98cc33650d806be132db4fba45239e4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:2b4136569e10ad7d47c82bedf55c1705a833dc67c8f833656996bfe1fddbef3e
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:dc0db686b7688f98b5f8595661022cdffa5d26a078289cc7aed528f0ee1d08a4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:9c2d6ce05775ac34ee5695b3367d12bf2a9c14e318a9544d00a56653ea5f2007
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:7da004e158006dcbdcf0c3b78c40411b82c9d56ebf54b1c30c245b6550b8ee7d
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:5f581957e4f8deebf6104a394272e6fbb1c54d813bf069e95875d865eac209ad
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:152b425725228953f43b57a4a034a6725993a5ca556af328ae5e06aa3f1acbfc
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:4c192208c618b49f31cf31c9de1a33c622ce3f120204c2eec8ff7c439ea6785c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2638e3a90bbb242dd2483fefe9fc8b472f334c510d0139b9b7c875c30dab7984
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:003fdc6cd1821d620e1ce4050ee608e2d2a32f2b08c8fa9c147e2e14418a8d91
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:80fd53a580ce7bc4d02023d38a04912e84c2cd50679fc5ea034afba935623157
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:a936d87646843edea2a84eb429bb44eb730bf3e04e8900fecef66721426dba89
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:1b5452b87b36de2b62febc777efdc6233a168ffcc09e2067e482cc444463a57d
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6a388ee3cbe3813ac955d319f0ab65a81da321d982c9881c6c81fe135311fe1d
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:fe6593bc73e77d315d82b7921bb1975c19fda1e7630ef5b30b69f5901ce30178
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:cfaf4eb86ddb9c717340ab17fa4b83323e5b40977ac70265376c87329a3f6f20
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:85202cb75250a1ba2691d65b52b306fd77566660dd29cdf56bf8962e8bb4939c
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:52e1ba8ebf4d55c64c94c9076185c5612b537e6e5ed4944fcd6ea87ccb9cd182
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:239f226328e5ac77d6dee498217d55103a6d562f4829e38abf65ba55fda0aca2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:2a16c353fd13dc1f3f5c4266f1b9786a8e7a100dc05f2d554bdaef082271063f
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:1b7befcd29c9c8f783bdd3c5654b0412ea45cd88cd18eb5f8f5a411f1323c6bd
        - registry.redhat.io/rhel9/mariadb-105@sha256:c390b12f5c2c3ea7cd897b59eba7127ce22f474130cd8c1bbbbaadae870baca4
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:5c0d56f434298f6e8bf6cf7061cd1ae6df9915225cbf04b010b6b59a64775cc9
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
        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-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        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-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - 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-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        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/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:2f6db789ceb3f90f9c9911c6392e62d0a8e4d61be68a7f7cbd781f47faab6389
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c48474563d98df32e7243e33302428ea8836be5e1a2e30d20b4d796a62cbf6b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:34d177abb56b948eaf9ce6fa62e37427ddee9fcecca48e752d09f72c69847a46
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:eeb8bdc94e7fa2b454fedf72eb75756052f8bfb9d92b116a8267a5584e2528c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:60507a3dddbd88560fd85204699147facd2b6371fb25e0bf6701dad02c0b4dd4
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:038ce76571217d6c624d614652e8b96ef6484562cf52ec1be88392b8ef8a3bbd
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:d87e4b1cba72eb4f50b3f2d59863799929c22ca37b01a1ff4828a9ce0be31f25
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:28ec01e514c15cae145499840597d1be1b750123bb6014de2ecc3ef0d60fa134
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:1dbf09cb1624c9f961f8ac8e371c97aa7c3fbfcad4c4d02ab4fad0eb86d2aa95
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:9aa5a93831992588766ac8594ae3c4dc7111d08a90fdbc8751c40484339e46d4
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f9c474d454d0b006e06859601ec9a64b5e5c91e9a47bfab6ad6d8cce5aa6b89d
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:4b1b9f05a94713292a7a2f6782fe1d3eea6f36214c36b38f402aa91a554ab18a
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:1a1074263ae26e4c8b0e3863228c35e50133169f377ece6c47b58a12e0fcf453
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:81ae2b95f2da740cb5264b9ba8b85f0f58bb4ab80d6431f66d52848ed0c21afb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:61a506fbf263cd72951ac8bd151127e0c74fc74f0a05f7aaecaa54fde47ee490
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:13b850a5a3f8776c6c8db887c666d88df72901895b5ef1be9a8bd372cc02fcb8
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:8ffc5da798e783c65d5be7f344219b2951d8c2233d6494a4ae2bb5c86eccd699
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:45498198fadfbc1457bf2a6084ae7ea515d454d86d148783aae3abdaca6e999d
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:df34e9d2d121a3def2dbb86f108b3fb6948bc7ba7cb44c70801dfd2e81d3fbb1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:13dff890ec67fa56864c244a40fc404e9eac05f33573dd16d088b37f9340ec41
        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-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - 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-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - 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-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - 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-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        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/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:0224a782de0b062a91d9b0188a59f8fb169db2b7e21bed7624826d3fff7b7da4
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:3094dd9e7dd9fcc161fdfe983557edc9d773b2c07e727c0bbb0e37ac16a39d93
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:c16cfc8521eccd9b494151ffa98dde6b7faa5e349da611d6091038a8590dc447
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:aaf677584e83ed6a93586afbe1c9b698430593e346c8cd00fb8485ba4350241d
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:eb68797b15eb5d748f2658ca41c7aafc5b9ca38882c56b87a22d5c9a3b5e2948
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8c99d5e93a469b2aa7f7ad4810f17114bd032392135607945669d92182e37fab
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:0bda59ab4c3db060b7221c630f6241cac086e3853470a07726289b87299f4da9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:4326604a5f2f5ac398f5bccf5259ab166fb21dbd273eb233ca558a22c1163312
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:84a7c26966f563e970e5398cd0396df2b4fae3b680f14b38a59bfa34b3c3a2e6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:a9546158ae141cc3c590732d578af95ac599965b3cfd47fa440e461658940125
        - registry.redhat.io/rhoai/odh-trustyai-ragas-lls-provider-dsp-rhel9@sha256:c1694891f19be1fe1abd431505549dc02021c389e640e77877bbb7921b42aa5b
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:c90ccd4d3167d2092c451af95a773fea19821e4b8bf8fa754bf0b1b632a7f51e
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:4f250fd17c023c43ca64ade19c84afbc77e72e66548573c2f987d10e6aed3821
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:4a035bb354c4a0e4040c277b2f1a1ffdc7e61f6f505c5fa5d032d22f50c4fa29
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:ee6b2596c10ca608cc0897a84336871591bf701a08bf90f345d2232277cc0c3f
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:bafee27b0842d196eb305963cc9b3f29d31cdf2c014af88b5965a8d908cc6f9a
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:b87eb195a423337071aa318c28452d12070041168d41fb41e3ae3207619a3f16
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:ad756c01ec99a99cc7d93401c41b8d92ca96fb1ab7c5262919d818f2be4f3768
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:5f5f75d959ad8507704821add365539dab7401a7496bcc7cf2357c6cf32df3c4
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:03db3dd3eb3290b048853a8d943fa1a5099727ff0d1934eeb0a7177bdf0031e4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:1431c04ecb88387a9e15566ba8105d19c7fbceecf65eb5731fe69cccbeb09cf5
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:40e552687ecb12803db16edafb0cd93e39edd9269d1471a7ee1d011b43da1fa2
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:d5d3f661e1ab392b1e977f871a1cd95f60e4d7509f7c79d714a4bee10aa48293
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:9479d6829ab86ce510ca9c25e3fc69dff86553467672dd7f5cb356000e128916
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:e45e6925ad930d9195d906fc922cb956621c98533cc9ad1916c510e8a79c0904
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:c852573614458adaf8d0e4f8f3f675c036c3daa1ea8251c7601b2d4c22b3e7de
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:6a151dde578c2fbd7377864cd5d04268853e49046be62cccc1d298e444c73f0a
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:6bf37b3786398e1d9b7004d5b08e0b4c58a5dcf453c02a9fb260bdfe9c32161e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:b03cd2977bcb3d3a44795eb17e7fbc7dc842ab277fae441031ff921bdd7f56d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:fd83ee0ec98d0bfcd7f8567b2f802f08a3a8fe74eba2a74ae560f90c1c72bee5
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:8d17607ba6e4b859ed724acd1cdf54e7dfff6989fd23dfd7b77faf55efcf883b
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:59f75020cf630e2c7aeb1ca7692745c8e11e4ff46cc29fe7779213f7b56d1e71
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:d79f02050b0cb8847c5f83c0a76ab47bc79a2fdaa2c18ab6ee6b3d94ef9bc7ba
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:77cac4adb89bce424db492657eb9023ac9574fd32096c3bc68b960020fade08c
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:5f7a974163856d07985b5da257688aad036427d3724194050782e58eab0cff1a
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel9/mariadb-105@sha256:a376c86dc5b288516604d46bfb6025972e962b2be5a00e70d5d479ae465e0bcf
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:c00d908ff5d82c0b04ade151be9a5a97843606dd9fff731c849717ff79a3a596
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:ed78d0c5946a2cc75c8bc2db6dbad5d757102acfa9defcd3f4a30829aa47d9d1
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kube-auth-proxy-rhel9@sha256:657bc0b43fe2da3211d80dc5085f57dccb451c30b1a254b87b4876745c414d36
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:84a1b58dfdd85eac95478c681affb502d2402a14bf2879aad36f1d17dfd08f39
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:de67ebe1de42971f1cb99df039044a6c79471802dedf666282e349c579f79c3a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:3e08c969736bfa9a44f6c7811a4d1428c03fa80b52e0b6391aefba3c36758751
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:dd37de4ca53ce242a0f67a70d19eebf157679098a3417e9ffdf8e24378f6bdcc
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:1318b9f8de94db57dffb87447b34bf660eae0792915b4aa64375a0ba0f13ad85
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:2efaad91d9b7c997bdc41e6120d46620dd9890eb6bd6baca7124aa00f66fc972
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:3d63cfa35ecee611a9075ea21060f75b0926f9b018622f52282b9f375b5ef968
        - registry.redhat.io/ubi9/toolbox@sha256:668ae64b30c95862377fc2414e48714f1aceff9d23a1d8c4141e3e83a4d4fc2a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:7e7aa488af45e4a038664881c7da3a9016fc9f9c7952efa35dfdc77971fcd5d3
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:bfab4c5965e44d4428eb5a3d3ce85a81a163e15093d981a9fc474cd8f9fd64c2
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:bd7352755c52f16dcfd7403f120f65dce7742dfacc393fc6bbecf359faac47c9
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:4000a91132d67503a4691e76a7079f9140e3c8091fb1a59ad235446f96cb1a34
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:70e900e40845e82ef9ff4ac888afa6a6e835b019ad69aae7297d111e087520a3
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:c8c0e4bd524abd8295ccec00e7eacf6aefedd1e67d345e09088bc87e10f6827f
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:13ec5c9b96a9ca8c0a1fcc0568cf6f893478742d28d3b1381f073b9bdafb3320
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:9a6f0917e40d82684148d25c96e2a5b4a8a24dd3202734dfd7450f55d9e8b9c0
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1552b758539ee09050b1923cf214d6d88543d51d7ca230d6880818ecf287c10b
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:eaa42ee5a963696339c318b511a330b2b6fc9e1eb173d2d47f9cb757f6eb3da9
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:726bdac8c5791695a5b0a43654fd482ffb7eda2fb384dcca42a73cce923a411f
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:4afc7a50800be57c57170b6ec2345fe0a9fab1eb4ae179025f6fae230bc05894
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:a50f7e2e8891acbbebf64a2acab98ae64e21cea7a5b5ea4b63a148f4fed91b1f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:a59bb87677721dbadaa3e88e29d47470d0afa2c1b52c652caa77f74466beb698
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:d11ee73c3dab3bedb39a6da9c29b5221a307d9f69297a12df3489f04cf35506a
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:4fe3183daa06c1605c47168db6f96a6dbd2b72df8ea99ef755372d7271299c3c
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:b6304ccf7e8064bfdbacdfe998bbda099d6cfc36a9cd92b77e4126609ac34f4f
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:3617ae4fba7499bf17ef591df2e787b353d6ec7962bbcf14c4c8b3edf045f314
        - registry.redhat.io/rhoai/odh-mod-arch-gen-ai-rhel9@sha256:459e5abcc3d5403ef25f53eb4c6cba75c88371c84dbf02d8cb67f478fbe624aa
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:95177d662c1ca6d86b77f2a9427945e4d65e8236b7adf15f3d35025063afe94f
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:f5b70a687fef130c35bdeb108d7aab4a0eadf6182d379b6c517e9d1157713108
        - registry.redhat.io/rhoai/odh-training-cuda128-torch28-py312-rhel9@sha256:851f2b31fa418d2eb172ddfa6010851bd5d4f0844d16b2b42a408f2c0b985b86
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:20b705332935cd372f06b86e36c521873b39c7660b077b90d39b7bd37700c679
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhaiis/vllm-rocm-rhel9@sha256:8624e2a5086cf1303b59154a817f60a3476d6ca48899261a2e477eb9e99ae781
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:45ae3dbe4cd8c5ea8a5ba767bb95c540d618b6e8250dcb1dcbac01e3ec805245
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:daf66fb7ec41191aa15f32638fe79f4a76c7d158b705e0f761f5b77e1f91336c
        - registry.redhat.io/rhoai/odh-training-rocm64-torch28-py312-rhel9@sha256:501794be7653f12539fc420394c5ecfa2986109ef71785534e6e068212d07c25
        - registry.redhat.io/rhoai/odh-maas-api-rhel9@sha256:29165b6056073e3f040a8d4eab023dcc522281888f7e6db0aecd447762761115
        - registry.redhat.io/rhoai/odh-model-performance-data-rhel9@sha256:eda8a51f260ea4e061b528ed2ef6f631a8680e5623ba5ef528698e71d34b3a58
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:647df7a0f1d33fa04e39f1d38f918236e9983409a07fd9de21b085fc847f0854
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:450b2b76c53f17163cdf91b03d35c296b8d7298d9cbb7b792fd2eabeaab794c2
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:65f00fbf16f2b8ec98765b854f395cee16d69f2f58d0fe81fc1ebeb3817fd326
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:78b6e29c66a425b9f097cba92240f96d32f756d379b779ed37ef51e8625364b5
        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/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - 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/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - 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-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - 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-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - 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-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - 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-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        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-launcher-rhel8@sha256:4da77afafde99b15fd357a4ab6609644bf6330a1d9c0c03e64726ed1b9633230
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:fdc2bc06b0dfa79ebc6451ac3793b5e8d9f165171633831dafe46ebc18c10c35
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8911afbb65c8c4f10c3597624485be54b9103e87a5020b718b35ec3df2c9bf00
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:7df2f8bc2c5c0f4f347d009b62a058b5107413a2abd789f6010eb4d6c9e4f8ee
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:5d15175f934017c04d6a6057200ff55b2172a1f4bcbeb0f2cd9e9e545631d93f
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:0af6a91553f40ea40e86d85edc204658af3e5a45e8ab94cdb6b767e545df59b9
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:932e83fe9c9b54934767a7c5af683b2ab08bd2b4f0524c191f1c766dc64d9c3d
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:8fed8f58732bff512289fff738d0a94be67286c41b24eaf5928bbcb30d88c88a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:a4b9553fde02d9c67a9c98f063eaf82fb1d2689f4b1269e57bf5f12c8d4adecf
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:232ebac25084db056fdde49477b5c1e6a03a0228fea3758bcf6234b3d0eaa582
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:d2514bf4b4b2d9abc19facac3f1a55405eb3ad0d9e9203e8816bfcfa08c9a6c5
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a1d590d0e2b3fae9ecbd843a664dab083061e797f66a9f0a021b0c2c487d7e45
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:24238abd46633709feb75f2a3e41cf6c9e8528d2c0e4be2fac6f56de44e3fb9b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:220cad7a22d40998063c6b4fb2f63e69330e64ca7118490a6680b05fc99b7733
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:4876f14ca9cff0e2b998a56f2f56d0775edf3963de610f4b810b4d94fb12d719
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:d9b55e8f25b81050380b4aab040243dc18a7432c48912c9b660c97dcc5eea008
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:65db5e8cb2fa46d020ed4837d4479d133b52167c373e65f81cb590eec5391af2
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:52e8deeeeaa21b17370a5d5cd644745da745b6e1cee8c6295d6df75c8d2aec04
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:a9c6e3afdf605465766fa93334cc0f6bb5e46a5fdfd7ec64d648e2ed72b05ccf
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:f4d7d3ba4a0d3322bc9f327e095e9ec56073758f6dcd8da8c7bb185cf952ead5
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:12741379ab24d2286b5fae77f4383fb65713af7b3356fb43d8254ea85d4b0ee3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:cba9f25ac6bb2734bb990a622b515c838b881edb688bf44ff196ebe7684ab74b
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:2007da5abf840712cd2edb50462b2d8d571a0193c3ae1550d4a279eddf2b335f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:214ca0608fcbc0fd585bf01768d28c7ba17082d1043349ec8445afd663095383
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:807ec05e9e107afc969e718d0c2c980959e2fd462e777a5ff63e55156ea150a4
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:9f7b1cb8623de8b0550b0ba124d3b50f5e960ed011b33a3262c6346dbe2dff95
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:d709f65e1194bc877fa4f9ec681b598467703d94139d57b58c24490d3a59fb82
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:267d6795bf53f9a1955d73445776a428dd042af0cd3cb8bb5b91692a1bc1e5d2
        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-notebook-controller-rhel8@sha256:8883bf71abf39b4a6985940c287eb6ac7dc137d491264805d48bb112b65bd008
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:74e6cfa0bc481588cb8dc61c206ad567fbd2b28f43c2a86bee4a8e0eff55447c
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:59e9cc9cd57ba48ca7e87ae1e797a902f826bb890cb198ccf549f76ea581ba6e
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:fb630d6f5817512733b8ea05f7147121928917a24ac8d98239f43d920880c359
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:030c53690fe25e15bc9907f51c3f04fab39b4d085ff2098d26316ba32cc8b09f
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8c19c7fa535f36bdce3b73cf3300e321909d44954cbc63a8aef6321c5f2fa693
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e1c19bbcd4c010ef2bd4f760eb24b2c96cdb82b4e025361a433e6a241eb23cf5
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8faab013568ee023968a5ec5b3a79977d7ddae3deafff6328e6fd56a27198e24
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:688389195aebf3f43e74e40d591d2fd5f9ae41994d8ac2db661f292f6eda012a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:2566b73e98b783871fb500bb1a8cc4e3d58a513c1bb18abfb525da0818e6138b
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:cd6b535d95eb1b44fe261a5336270fd898b966f431c14e173944484381c26d25
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f5b17f44c5ab72d6cf658f72f24f15e06a5ac9be1790336f7228ab8e7cfc15c3
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:77bca19180f30ef08f4d1598ac6c365e190bb7909ac4a1fb35d9ba9ba8d6ff7a
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a3048eaa8924ce3571c6e78014438183fae70d9e8c833a7c07774c675104e3d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:cf3779c64bbaef1988886ed629c516e7d6ef7bdc73b9c95ad4c087b62e75750d
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:6b2c0d1dd40e2c276684e17818b14375bc778e6c88df0bdc3cc24bfc9294804f
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:fd4ce524acc1769475079c7231f5ea79ac29551c513855ef34e5694d2c9fbbd3
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:71abac4fb3d613edef7f3ba117a73bbeea61f341d6182e8310360a76576c789e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a37529eff3656a570d796083404e5a3f63603afecfe9e738da1a243c0cb3d7c2
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:9ccdd7fe8223057a2234a3a2eb3b492e7b69e6ce714cc26a805fe2dd82935195
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:a55f73d72ad2b07f01c49949cdb00969bfe4789375b3d7cdf9814b969fcc808d
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:363a35c332fc80b068157951d5e50e6b7209947649cc64803ffc02726e7581ab
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:850901511bde065cf73e4c18d787dc10b6e91ca6139fc3ba68da28c41dd28236
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:7c895490d49beb6bd724f47ad1b17ce501650557b0889314799c4072632f2b99
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c2ee4136ee0014d1ef395b5e3bcab125c846f5e258ece3631d912f431c8d208
        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/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        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/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:d24e277f468b0a48f38801e8e0bcfeb8264c3f7c128073ddaa17934b8572cc3c
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:b6039c3c33a5dc345ceb8e757437bb13023d2bf85cc2b4c10b9ab3887e78e0c0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:bbef4839f24facce111d21aca43898dcf4e6cf57adb16200e3f1590bd5f89eae
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:520ed21b80e5487b3a0a13b7e5c7d791d4dd28e0b6799d57abb65d53fca5a03f
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:d47514cbceb3cc96e9d33b7db6fc1df60893e5c4118bf6086cdd27f04c472773
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:c1c97b6beb759d3f6f2dd53c4258e4ccbb3bf35cf11873bd446b135defaa69d6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:de0e4b7fb822101198817e83cd7e9f4f7406e75ec91d07a833a27a417cffe66b
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:b20ee16b776871d7c49b23f2bc91726812998561129f5dbd14eddbfe57964c93
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:baefbe4e7dd5aa74c71cb81da4a7a2b888a02d3eb1398ec4419bd8003b77f0c2
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:af4721d61dfb61c75488a1bd6a5f62b23e20d7b7586a9cf51ba062ece2837715
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:876ca7ce7b0b975688fb4a77d6cd1a6f87cf9eb40c2a9a5b84d8cffdc80eeebd
        - registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:bf6231bfdbe52b597d86e03e4730ec105ebe7a639fcd529268b7c0423f2a890c
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:6275a19ef06114b33d79833a94ef10cc8203368eee98e5d415e73d20cae1db85
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f49483df1d342d8e39f9a8085920aad79313a475df02a2292a136ecb784402b5
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:4313cae03c041d461bc276abc23d706b582b5d16feab316796ca43478b9dc705
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel8@sha256:6166f525948a018c41d735014d97fdfa52024f7be31e18976d85d1a0d88901a0
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:6ad35cf5c4c62ed5ad4e192afe8cebead9796cb24a964401c76ff8656c47742f
        - 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/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:6f01ac7cc62ab961b9c8a630a558338a61f6d7902301c4a1ad337495ac7ce85a
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:4e8f6c6ca0ed516b8310af0332637683b5bfc8f2946eb935c647698dffbbcc79
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8a6732ac3ca60f13dcb1fd8f186d2fc5dc601b9b5981a58f039af9e237f20044
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:53ac36baa374159b9065c718a9ede821bbb61d9ebe9502b2243e0a9f7aca0d16
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:87685c5cab105d876ff0d14b0e24d8dc2a1ff5b55bebe36028c5f3376b2a5271
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:71cd15f0b1acba3a48ebedff037bf8a846b426c18363a4de8896a376b6b7b3d5
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:b24c25dfdcefb4ec26e7f311c00798df108f7685def2b1762b7624fdfb160ebf
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:a6e02e1876fd5382ba4921dd65650b2d747666feb96c839f34e99d2972dfc323
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        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-training-operator-rhel9@sha256:b2ca229bb4c4dbf04b96766b8af8d9f55f2edef59ec4110de0d20f8c857e7d27
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:a44d32a18b1e906c1411cafc82102881573fcd04e040a4e2ba6bd1bd617b70fa
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:2f3f305c97e50057781553416fb4026cde306ead0fbe0213627b9b5bbcc8a0c3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:2065b96bd6f0a830eab66e36217a927448cfc5a7dabf2a5e7d907aa6c40657a4
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:2fe9473cd1d6c445d2ca7cc357ee4bb009aa1838f9cb69ea418296b2a044816b
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:7b3d7787ba95156de9c284ad78f2d63a0d3bcb525f4d8d11ebf0203d4c5c1fe0
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:6234e15f001122ab222481321153fb0eba7f4d86bf3dfd64edf3f6cecbe7d62f
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:9104cbc2d595933f0a2acb7313e41ed69905e76a9fae6bd9820e7717b56a632b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e87a96c8a61042e83b8db0194adf3fd84c3a311b1f3793345a35bfd0e7ea56d9
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:32c9511846077ef6035eb19be7653f6a78e0f207eb420ab93b18f742ab5779b6
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:f9965177de24f3165ec4c001c14cf1e2c2c01ffe847839af837c442e3c96beae
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:e6fbe6723b4801f6854303b3fd7d4a4a36727bdd28dc28002b7de4929739ccc0
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:d59ed40de694bc0e0564bab159a5b586cffa0721b6d761fb2d81dd42e6225d1c
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:cb5be3dd7098f4c8d66f9e85ad04656460df6102652deddc6cccb884a12be733
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:abe1f9dd11c7313fdd55b678be511a5cdc3546654a68e2b53d42c1013fec8d00
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:1709fa3c79aad4ba7eb9be8299949396092c8e20210124e0c0936385bc04e839
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:7fd540586a1ca111370100a473923b3dc6cec4255e9e4f3654bfbabd9158a2bb
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:463e9be9c4409ba1e5a42713bd65844a023e7a3e9032d4e862edbaa5fe35300a
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:d7c4ac937add511460a36375d9b6b3c475a3a9a7cc96c00df2fbad6219aee0e9
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:bd6d1599b4ff9eb890be9808014715b28ca19247222d65f40df024db4dd3525a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:13f3679ab289eea9de54fe129a7c83f6c8ec5d26b61b430637a7c4cfcd31a74a
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:74d4e0174655cf6f6273857325a1e714a1531c5a06ad38bf139bee9c7d8f5f19
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:27415b1c763cf89b79391f0b039936c3e078a078bda4420f13bf10ef9be31d5e
        - registry.redhat.io/rhel9/mariadb-105@sha256:5e77b33ce04c1eafc2e8840586ad6a5b51148dea8a46dda151071e28858331f0
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:5d79f0bcca0a213b53aee6d88834e503d343821596b857b13d3a6362de8ebeab
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:e3b90530c6e38f6940d7f9408e9fa2c81eb06a857ec2b0bab5d006b1e9a63a4f
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:2b3aace0d80474470e71c2c8291b25738e096109229fe6d5d3e06e9885ee58b6
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:ccba67a6a5aa3403e0018f29dcdfef483220dea8065d8b572e80c653ca992add
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:5914f71e37c815ce2567826896e051303bdef52fae1acf8d02e672fc24c7eb9d
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:2f1a0a0803b2f5118b167e9d9c2e86660add5f79ee6f47044f63b0e8abe0b75f
        - registry.redhat.io/ubi9/toolbox@sha256:ea4ce8cb8f59cf1b0709f1606d7cab074c3806d4016964eedc0555410cb5dfeb
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:b2c2ea9d35edbcd16e1ae559c88a453129b877fc049ab7a7cd6c2ebb8f0bcb59
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        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-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - 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-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        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/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:90833e85e0de3d7de870074c8b04319cd11b913b9652af6a5727aae41a91458c
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:9c90873fbd5af8fac8efc3c7c27fba742a06fad2d47f336319dd05d2b116867b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:987c768c0688431a53e48a80591f2a41e074994169f9e691b28b89528d8e736f
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:92d9e4b53d580df6cc1f14a849b477749a1306941a2e8f9d1b6160f4911c3cff
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:080377d42d782bf525b4072384d0cf8409b48019b3748ca7c855f340bcb94251
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:cb711fcb32b5ca0f34c4e3c67624bc4e035de4247617d988a9e841fd58c1c911
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:06a6d5cbbe80d49bca9e4db9929571a69e35ae7951fcae84dcd6460f7ddf622c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:850b78a201effcafe33705dcd2670f1c470d8b46ba6e307032403627b55a7cfe
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:df2edcaf4402b11ce24439263956e3b0cc43efbac2fdf152afacb1a398dcc59a
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:0b8665e8978deb73be2cc65830f08a74a5a48f3e3ee7b2b817f7bbacba257d22
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:68e1331f13dfaf6641a1e7d54f4cf29c0ef42663abc98b6dc69167892d2d8adb
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:1a6e29214e06a2665baadbed598ba758d6141bfa522984eb05f05a80558a403c
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:5f39b11f0cd6db2d7d6e51ee666c030e2643aee92a090b49656c1e7dfd8a5430
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:889f046b255b13d99801108588d3abf577611b828657b5240a18ea21f0e3cbbe
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:9799003449bfb61ae8f59efd2a611b0da3bccadd9b20cc1519f6c9279d085337
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:eb4da3a645b53acfd6ce8758c043ae19b4126e62bcca09165114a141c2c8d014
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:1c49888ba2e9449c04d5588040c099290fce4793c2ba8874c1037316e550d6e1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:b6ecb3858c201498024e3bfc4a93e630699be4b1fdc3a65fd2d70e4b375eb9c2
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:ab8792fcd16b1aa0065444ba54335cb3e747379740c3ec2d56beb46ff80cb044
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:91525fac5fadece75fbdafc40b94445fb92c88cfc8c2f06b596f8c6377e59c9e
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        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-cni-rhel9@sha256:d0ab36246c556249b6d67346eb0c72ebd22483a6502caa0fc75112a8d327b053
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:f16cd8a29ddcbb3de77cbfcf7e1da78e42cc0c1c502132d477a01c52689cdf23
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-operator-bundle@sha256:f596dc9323da89f5e45e71192f0fa698b7bb29b8205eaa0fc1659d68fa7401f4
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:ea9372fabe06cd8e65ea7b4567ce3c8fbddd9d673dc34a12743fd95c548059d1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:c21481d6dae58b82dac93b1b47b9d9f53a30617fa9d930a0b5d075620cffa74b
        - 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-proxyv2-rhel9@sha256:cbd6bc47341ab8618609f89d063552e17232541c727429855c01deab73e4d06c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:e3978aecaafe2678355e21a7303f8620f53d8b774f6592f10527c15bae957224
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        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-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        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-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - 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/istio-sail-operator-bundle@sha256:6cdd4499ffcf0843dc9cf68a15654a995514e3f97418e6aa06bc50271305dcac
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - 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-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        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-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:459720a287d839ad70886879d8089d821a2f98dcc32a5db5732ecf18a05b3fa6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - 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-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - 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/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - 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-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - 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-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - 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-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - 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
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        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-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - 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-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        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-hub-db-migration-rhel8@sha256:a180db14ad8840a766a3cfec7faf94ef909a079276be904b4d1064f8aa8c0ae4
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:bba6ba57778ecf3f5421a2eed5fa0d1192a53e5640413ffa83e6553296db13ea
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:d60baacc52945bb442bb8b78fe8848f4a4f6e7e9a2818062631d174db5f31c67
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:ffcf1b0e3215b8e2525be0836d7c727e639b64900954a804ab2a58f9bc747943
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:f3467d9f19c40b5c70659f0d22750e603dd7cd11cdcc0b81310a5d2abfbffb2e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:38944f69b37bedb05903dc14c58415dba21873d2dd9a0fd2084cbf7afd4d5fde
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:09f162c742dce25deac02bdb5395a7fb714f171f924471c96f24680f95ddc975
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:a69dc4520666b54d621f1aa8098c1457b2d5d2db125d612ad028ddea1a4e53fb
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:34a3c32c391ff5f810f0c84ff3ff5a729c1a12245f4edc66b4b22bbf30ab1600
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a52bd29991a8a54853c938725162ee832f95f053b149b657bc24358f9aa0a1f4
        - 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-cli-tkn-rhel8@sha256:9f26e5a8d063f791d355481b54f02f4394e4092c20606e5bfcc604c669b995ec
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:bf94a5e27a3a662a4a35ddbca377e4c311b8bda45748d7c4cb5549ac46d4f4a0
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/rhel8/skopeo@sha256:e297b84ba6f1d5eb2c37e2c3b31c9a9a4c39f9590e7d7c32388165245bde4835
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:cf566538843704d03a05142639d58e8cb074aaf4bcdd03c0585574c3bc960496
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:e72a7f6fb660ad48e275a70cd43c085df4b87405e5e8c85d8665b421551c4d71
        - registry.redhat.io/ubi8/ubi-minimal@sha256:6825946f10e8c81586fa7815c4f06016af05cfc231d921ec9699402a6655d201
        - registry.redhat.io/rhel8/postgresql-13@sha256:3903d562425dd564986123280dc076548fb3d24c74138dcd857652f53052e0a7
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:8f0704328fef0e6031088290fe47e1f7625c4825ebd2e4edd9546279f87c5fb3
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:8709d35b571c163ed6f3e24b6e653e7dce8ee80f0440795e50e69f0ecfadf304
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:7a460bc5609afb2865e20f04b5c0e86ccba3c9a31a09ac14d799556d4b816356
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:9d1436c1569dfb8dcab5c0ed2d675fb4f8024fb3ef85707393d1091cb5203749
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:3cfa3e3ad23f04e75417c2c0fd88c6b0f2b69361bc6947cbdffc594ecbee6d28
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e53cec5cde1f23ab17082e3326e3328468dba3ec6c0462f06d030e0b1dfbd8aa
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:bd524c790588652e11fe8ba07ea8df0a2d483840c9a84fb35f3dd3e8157233a5
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:21214c77e4a525e6eb0a8bd0e77bb7ede120ec2030dd198fe00ff1cd79a58239
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:2077cdcb34dcd57972f71b403cad02ea715e19a7096e95dfac228168e49acb15
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:0c9d398a73708b5877467547ac6fb1e9ccdb65159c454d31628e93a59da47f3c
        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-git-init-rhel8@sha256:f6232daffac97d841801ca3b356383ae73dd3f74ca6d635475283865737b7862
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:ed20e74c11ce0ca33bd832bf29d6311985affd67bda05f8cee045d8732d235f8
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:c2193380a48239c024d9dfdbeb45cf2c7f462ecb8ce23fa53c5fdfc162bdab58
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:f7fe262df4d73aa598d63ef4d463bbe84009e784d0bd2801de1131e6ee0f3ca7
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:c45a22f5660fe2228eb55d50f061fca7854e52af7c6600f62f8bcae93c15edb1
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:2f76b11f048e51d0e33f997c5fbe0f9bf4096a4a9cd97d5d6d8084fc10722c03
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:fcf8b863aa41a702afef381a087f4daff7dcad1e34b03d2c0b0192bd5365cb71
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:e73c1fbaa426e3fc8acda26a38abd1d25de1f933893479269375af40da53dc5f
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:d92d48d42e42082a29d61a0f8b8ba7dcfd5e8ef0a8f66ded0bedce24fc81be33
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:98bf4813124dc9ada33da9530678e239c7953a1302a6cf9dee2277c276fb5758
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:8a593c1144709c9aeffbeb68d0b4b08368f528e7bb6f595884b2474bcfbcafcd
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:b37a8c805b43eef99b2e7df017622965eca79f0f8f4b1f05917fc2313dbdf40d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:8723ee8cf1f41a85fdfe2699b014df105db50be7c995371dafea698ade65c91c
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:1bc3273f138cd3a48610df28c87d05fda126d8cc29d2780a0c4738ea9bd3e85d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:702899060437993a77a038c36284b99358caea038c44ca5a94f892233bf85b99
        - registry.redhat.io/rhel8/skopeo@sha256:29465586e92ed04d2878dcdeda2d508c7e8e7539762e10296b52d631929960aa
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:46a680ca7416fc85ecc2d5c7fff84a45b493d02f10c087d3088992e6475f0ee9
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:91c836b13d3b9d4dafd4198148172f3f42122f9b38bb8be53c26f5b3ed9cf045
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:9b6bd5c8a5da471bb05b4bda7a4ae3a86b9b1d9128971aa6ce6f4874bb6dfa0d
        - registry.redhat.io/rhel8/buildah@sha256:aac6629389db17e99894c5bee0da01d4c8065d11d8c6f6e1602f9484290baa70
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:b3642afe8e487884ee62dd6f0d22b84627552afeaa61a3f56eada858795f1d5b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:14f4e749cdc026dfb19a53748a4eb64b875d7dc7626fc0b30edef364f3dd612c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:4ccbc6bb8fadc5ffba0ff8b0206031b51db1c4acd7c0d8bbd050bc73975d4a2e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:3445ab65ae506460e44f304df03c249ce7283c5fb7cc2d75b660d43cccab70a8
        - registry.redhat.io/ubi8/ubi-minimal@sha256:f729a7f5685ea823e87ffd68aff988f2b8ff8d52126ade4e6de7c68088f28ebd
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:fbf4e6f210ca31b8864f84731b5f5554fffc404d172c0207fb3d5c93b09c6c13
        - registry.redhat.io/rhel8/postgresql-13@sha256:a92a579f1aef66ac188d24fd489c456a1a3e311d95dcce652da6b81e28fbf725
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:3e80a493aac65370228ff32643e0fb8418f6fb576934e804fa1c65b38cc3d203
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:017455cc1c5ceaaa1034f197d0a98645aff6d83fc71a4a5cb9961c3f283dc239
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:e3a11aee5518641ad453ce310b159c52d827f443f99eb61a4f5427699c1ab16a
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:962780950d1ef7ebbf285ee7fc7c2d8fc9af1b9cbec6c29dffecc133c8933afd
        - registry.redhat.io/ubi8/openjdk-17@sha256:e8cc2e476282b75d89c73057bfa713db22d72bdb2808d62d981a84c33beb2575
        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-pipelines/pipelines-nop-rhel8@sha256:de0d59029c02e5e9e6d607375b9b0ab573807f6531128f13d2579067767e8a3a
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a27f43b86d2bc10c60de233be4e223b549d11c3aa7de390e485a79ac3fb4c533
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:945c1675422507e67eca06f246aca9e42aebcb2c874f74a284b5e5037f073082
        - registry.redhat.io/ubi8/openjdk-17@sha256:632e78989471859ca4ed1148b951a911f7e3b6e6516482be20967c4171612c55
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:ea97b4d3d0882e9a3f5a98c6af3c147fa96de92e40710edf380b58442d5a623c
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:9a230bc21f8ef9ad37398922498ace9e6b13f21adcde2b00f418543919a9fa11
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:752baa0d02ea097bab1d014b623b8161ae67317cf2f56d264bcd5d0a270b096b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:a1dfff15c9eed4dbefb484c76383073287de6f5429c878254d374a56ec7099ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:c2ca6ed42b7d7dc5d06be481e0f3b5da6c9219999a6f81401d434c0d1cbd9bdb
        - registry.redhat.io/rhel8/buildah@sha256:5c7cd7c9a3d49e8905fc98693f6da605aeafae36bde5622dc78e12f31db3cd59
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/rhel8/skopeo@sha256:1dcb4189c92da21ee58b3ca5433615e0208194c8412f7f1fb45fa491179aaf9b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:914fe1fa1d806cd31a755905ffaf0803995f494fcd86690bc9b487dcd2a5b6ca
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:9e9c168af3b24b4f084fecf3bbf07f66bce0fc717641ccaaf07496b0a8498925
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:8505951c0c40957eb65d551bc742e82642edf65385b6ca67bcf075036c42270d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:eedb4553f0be74f81910dbd1bebed0a4a07eaf4dc47ff0551a8ea52725127b6c
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:ab01a135f735a75b2b1efa184e1d205b60982c7a93ac48fb48b8eed66b54601a
        - registry.redhat.io/ubi8/ubi-minimal@sha256:a47c89f02b39a98290f88204ed3d162845db0a0c464b319c2596cfd1e94b444e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:fba741840f20e079c720d4bc4a1df64d78785798300d0958709732299ea321e5
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:a3dc7856ede01459cf74c9d17687c0c0ac5a404a6891266b12e19373218d728e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:42ab9dedc88f3892e0712e7868cd21fb62e955f442aad6e837638fd38dd916f0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:4037f8eea26c4a4827d127f99a40992109a19efae30ce9d14a75283d69efe919
        - registry.redhat.io/rhel8/postgresql-13@sha256:a308263f5d1071be8ac5c13fd84b40609988ca30ed56c22a8bc6769e107ce09b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:6b9964bd9be63c5e32d56cf7519c1b7eb65303e04bace7526873d4de73142eec
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:aeff39254bc40092974781fe847a295a1c60f226f3f9ae2b7f2cc9259229c3e2
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:6acc31f179b08658976cddcb9ef42f377edb29933d1d83a2ecebfd455bb68571
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:b6845e614c60e924061a52cdc091d0437a4dcd2d67d89158af2efdc930469b3a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:1658226f40a3f10d9f6c7776cba14a80644af4a56452d9617e85854daa671223
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:c701cca096953103ae21d8b0a4b76c39769f7458532fd868c798a5af2987439f
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:23eb0e3b25d61d0f4fabea8dd954bd3956e3b7fec634e32d00c6a108e88330f9
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:783174ac82d0d823f886d5fd1d89baf8cf467c13d651ee689a90a2c1c84c54b8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a6c5e95bf9b42ed8d6e20139499daf70a633ab35eb76cca3eda9fd380f396602
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:665f689731ca03f753c3c2dc4d4ae3f6bb001c498e54a6ef7b5d92ff00f2e0bd
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:fc935150749190a1a978b7b59769cfa2a9e50577064959ba619d601057bd3355
        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/rhel8/postgresql-13@sha256:757d8dd6f243717d820846da7144a49913f28f223b74ec305b2215f54720f8a0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:7c22937c957b4f405bc014f4b8210f88c1e5acbc7fb59a29c9ee8837d4e0249b
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:a4f1c5397fdedd9c820f51e0c09d6b464f2821740c86ab61772aed14cbb33ae8
        - 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/rhel8/buildah@sha256:6d2dcb651ba680cf4ec74331f8349dec43d071d420625a1703370acc8d984e9e
        - registry.redhat.io/ubi8/openjdk-17@sha256:e5fc9e34382da41b10d4ea566639d31707493abff9e8de81f5accfd66876409e
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:56337f8ceb6f2cce84090f9fee17bdc9eb87dc4e61c36c6353014c0f99cf6273
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:6fe1b45c6ee81bc55062ac6a6972accf5546c69f78db97f53c9b8975426c35eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:e784efdbe32daa310e7d3c7d4645613814573d12ee1dbbf74aad68cfa28761b5
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:bcdd6f5a185d4969def2f806403fcd08527bfcc9f4ac0706b38bc358d1d64778
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:aad40e98859844aedf0c719d7305baeb42c055872fb735c54c378edc014d6e31
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e9352d062e933f23277e81333b42fd86ee767e9fd273c8d4528ede410b6d7afb
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:fa2bec9b5cb68fccf9dd331881ff225abf6704973ee3b283e2b5f294aafe3ac2
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:b44ee90952a1556b9db646795d415d3cec2d1de7e01356438b53ba44c09988db
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:108160e0298da3379d4277cfa865c073c28fc3b25f5ba3155e427db5b50ebb46
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:0e4eb22c1f8e35014fac62a820895d6934312278d71a23bc8b4e1f5e200b6bd9
        - registry.redhat.io/ubi8/ubi-minimal@sha256:c12e67af6a7e15113d76bc72f10bef2045c026c71ec8b7124c8a075458188a83
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:58343c719d9c4d536424a55e280cc3f67c2bff6f0e0b1b56678f555d5c12f381
        - registry.redhat.io/rhel8/skopeo@sha256:7fd65200b4847fc84fba0466519b87f915e28c0e9bc90d3022beecfebffd4af8
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:de9337e8fa647d59727a7bc4477c613607975a493283037b5c81ec908da21902
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:ac3087bf9f4d494518fb19e3d95fe0f942fefa69ff9f8b2a82fe2d59c2bbfbf4
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:d2b4ad8837421df74485f6752832de75e6543940d8c32fa18811d7878cf4e7b8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a34bd66f9eb15cb09f7342d7561f23697039a8521fbe76d0f5104d19bed0a05a
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:934563cc735bc0c3421ce444efdcb3bbb38c1a42a2abcf49294af30e7f5cab8e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:115c28f9574540ec42be6e3afb93ea62f4d6e54c7367e86e746ace712548130e
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:245e5f77eef067b48f7262de04485b4ab5f195736dc128d2c574f32bb05d3b2d
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:bf9071d0e144632a0acd90ddb4d2e1ecd435e1904e22233a1e1978cbe3a0206b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:b614e12432bac989bf789ac84ec0a2bf55f5cab9ecd863432c7d11e4e176def0
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:cf4e3a23de646038e18a170f1edf49fa75bb72d49e9308511b680e24c795f1b0
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:d854cdf80b03566e138d1530e0200e7d9a349524d37ce0244f8ba97f6af3156e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:4cf8548faf20fa56d4ec698975bb90bed4474661170cc51b6892a144d0407497
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:8ba6e6deab70190b55ef2dda957a8df89e34bdb03f0671ff2f52c97c8da6081d
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:37109f6de75dda750496f6668164d0dceaf9db5278e8c034708436f39de3276e
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        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/rhel9/skopeo@sha256:d077e35100d6d7b3795f8e3594293dbf8b65c6bc18b909aa555fe56f048b356a
        - registry.redhat.io/rhel9/buildah@sha256:6886997da8c92214e99e3e8da47a0f08239172d2544b4edae058d5cb018effab
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:c20ab6fa719506bca942669ea84b113335b05df3ed275257b88be234cade7c8d
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3964c3248dfb1006ea9a46295baf7f8cfa71952d6b9863b52f87e8f3d7863b1e
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:fcd5fd10de7334bd59a8da4997f91008ced95c6cde40d56d50f3b3e32c0f19e1
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:0a60ce46c05256c74f770901e0bb79ad89e88ba882b643c1ff7b2a1738463acc
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d72842a7c6a1e50a68576c93f60047afec801cf83db64d7d3e34b25bf3c753ec
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:6abc903c784bb455e1f2fde45a48afe775239668e1d0dbc1b3cc6afca3c0b477
        - registry.redhat.io/rhel9/postgresql-13@sha256:ecd5a5583db922c517c735797db3fca587c0ef0b410e7dd494ace2267d89cf05
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:2ba6782af0d7e5c4d623de31814f43f4f7c3c38d09b57705021957d334067f87
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:8fec8e7a8b3e5182c67104de4e3abe32593b682c4a8986d1e9ab835dafb95ff4
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c90a9c3a20f088241980b76986ba4f43b0243fd6d94a826fa7b5888e01c13093
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:dbc462cb50385dec3a220b5d0caed0e0211c166182026f86e3c51a1351ba0de4
        - 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/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:96f5e1922fb9d6dc17e271576dda9bd032bd6dcc04e7496fb15a2f6b5871cd67
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:1b57b64657eca0002145100bae262a19f02eb40068e07994df467e28a1618f90
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:8ae0ca6411e4fcd5c0605344bc6930cf122ffd80e71199509d58423a8b41de1d
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:409c14649d8e7007d4b72b6feffb71dabd26322bf2a7c77f5307f2546fdfe81b
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:eaad37453a5ebef51c28d4a068f56e9f394e710c72bb86342cd2189001420836
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:b550a8bc2a87d07a5b22a3ec3fb83efd8eb26ca6e80d404f2e453cc9b8434da7
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:b9675b22bc8759903472c1eb0e03f90c75460f02799d894294c161641cad9414
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:e4d49cf6a2fb8b3585ecfe3b3da3e9de090fb99de3dee2da0601b1f6b071173c
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:e27a30d471dda4983a5b8192709d283a9d082558f3caf31b30db2214e418b017
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:36a4c6a3273f2371ab5e679f1955221c286ea753e29e6ab8da7c983681a68f02
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - 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/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:16d799503674641d4690822edc9c399c61429ccd31621d295eee4a4d1ef1c076
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:e63d956a0534f2e726301e00e877c4fe2f34ca4559e59d2df7567c04ded311a3
        - registry.redhat.io/ubi9/openjdk-17@sha256:5d619e202695acf76a5f32c07ace6709f5ee5d3999bf977e1bf95ad34197f44a
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:cd28c2c90dd340324b0d8709640cd7636f28286114b0023649b6e21be13e03c2
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:86ea94b12e8923035e3e4f39b6a53b3ab32c5f77d7eea170aa9b34aecc6f8577
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:776d34b0ea2e35c11ad4050e6b40cf4b40c84dbe0d5f3e6ad669c494a210ea8e
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:e2b4c3b505c4b5aa36f8a5e661389b0de4e799c74c2c7f16a065e5522b438e89
        - registry.redhat.io/ubi9/ubi-minimal@sha256:ac61c96b93894b9169221e87718733354dd3765dd4a62b275893c7ff0d876869
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:fa5c456fc91319c55fac9a011dc7bb32ef85db293c73d74436e903b76ceb4349
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:80d441ec5d07c5059277a3a9173a35dfc0b8372d6e4d7823514131a94bae3fd7
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:8b4bf043e0fb237553503d63b129c432600bb4e65b2096b246b257b404b42be9
        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-pruner-controller-rhel9@sha256:cc5265e2e163446554453d4f5db1cc733758b450c7550db7b7caf9ede474aeca
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:a585790aa11f5152c8a55ef36f74f731a34b2eecccd3250e5ef3cec8ec398409
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:84450e886c5ce68f4f594982fab6140faebef5774339226b0be8d7e70b963fcf
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:ddbab8d6b9d1239451bf695276c8ddfe00e78cbb9ff4fc6562a9a5a2924b6082
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/rhel9/skopeo@sha256:993f799d58c48151ecae7a84e63860f6c0039e8e18efed5ad67e7752f4b7e408
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:cb5958fdc6661e23f9957d53877a6f401af5a2f64a1305ae21579048846f1f70
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:b49089d2f582a7a9b954a75a48c590849e79628305b37c43a0c5ff795019635b
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:bb5bd9f505d0eb6ce6573b09898c2ad49f1d3602c36b380058b489d9383ba60d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:38a58fd012558192cd779ff8ac2ef3f02b8e82e2a1bcbbb9d53822c9d8890afd
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:95816d1f338341800c6947491d31d6ad826e56e821ad3ada78718df9f2dcd103
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:6a947bae0c64ffcf7c2f9d71b5f18d858e017ce6122b2499c555850fe7fe1fde
        - registry.redhat.io/rhel9/buildah@sha256:a6e04c061b8d261dba85d01dcb64d3f7dba8c0b9765e03f05ec79850a248d75a
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:aab3b001f60510c73cf475b2c218a7aa921cbca99b855d28862c42e83d610ab0
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:67334d9a2a0bee4cfd62d3e3c26608df4f802adf8970981260e4051b4fb3d055
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:1fef4759b410625fc797a8ecd166c20ad09312abfccc1cb941e946cfdccd2da4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:7eaab4455c1e416e4e0ba5f3e0e60c5a46aea23a939968e15eb6a953680a5f2c
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:1141200c99c69bbfbce4f7994b7d8b9eca36f5cc395acdf866233b3cc35be61b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:d21cc7e094aa46ba7f6ea717a3d7927da489024a46a6c1224c0b3c5834dcb7a6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:a802bd8ea9104e77b6318bc3c05269c32c6435a696f62084da83f68b9426294a
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:4f606f7cb607007573f1023408329bdbfbfd979dc6bb50ac4af0ae20a33bcbee
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:a68bc519e86f1316bf2c536aab16ebfab329cb51b07cd02d3021bc8332c4c97c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:41d669fbe8bb48481890fb9fb52de9d4cac98cb74e6a6b284d046a8d21b06e58
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:f151dda38d7fafe2d72e2cb064d074921c6b535543f29cfcf66405ba65e38ed5
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:408a3bf7a43068cbf2ef9af04faf3df161ac39e53446f47d9fcd083499a9e2a5
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:66588ef48047d6589b7c810398ca16032125174d7cd9eaf1d6ddebbbf82147b4
        - registry.redhat.io/ubi9/ubi-minimal@sha256:14f14e03d68f7fd5f2b18a13478b6b127c341b346c86b6e0b886ed2b7573b8e0
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:e1b99c7a287125dc265c536e5aecbe9eb4e9981ff030d28b9b127fb546a45944
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:e74f92e066f47a3eab9467f2253c3b85bc34fa41e2443e033b5e3470849b0d16
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:49cb3cca3f9102384c96e93108d09969df22c3858b1933ecff9fbe1d41aed981
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:d49f6cfcd815f93d0f1fad8a569bc8e52ffd86ba909530e95fdee19b0a1ca784
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:6a18f8d771900aa480560d1809c789d5243c4f6d9087185c610d9b8834d78625
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:498238810108939ead8df1158c6ac892ad5f0bfad57fd2a893b5ce53853504d1
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3e2343b6121790f18b8d8868d8492af0b0541252f50e290f585f467c61660574
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:ae34ed4ead57a26e1f65dcf433908ad75c5bcc243fcb2fdc3b4c211171c40480
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:18bb4f4139d8b9f041ec5d38e5350d72290715f8ef235543365ca4b353bfa8c4
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:2d6640e6b91896ff455ab8e2246f166a3cdd9c53dfca00b3919f646f54a11f9f
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:5bfbde45a37d8b16cf0ab0be8f636c35a1d9041d6c8f7f611fc24a551eb890eb
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:40a099a9073bcc2f8da442d8225be03c8636e456c548c93e1a8366677e845830
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:655a73b61984fbafe9194629705f51ff149d43a768a5a1c103045582eba8f2ec
        - registry.redhat.io/ubi9/openjdk-17@sha256:cdbd64ba1b7826d09bc180fa19aa6fbc09ddb5bff5e02b7e1351353bbabebb78
        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-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - 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-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - 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/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - 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-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        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-local-storage-operator-bundle@sha256:7f14582c0d63f02a3ad9201d8c90c762de2f131d62ce3a3b201f7e8ffdfa3153
        - 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
        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-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:1d86075469312e84f3d16379efcd6130ec9e8b23a1343e3945f071d82beff6e3
        - registry.redhat.io/rhmtc/openshift-migration-velero-rhel8@sha256:07cafb83ba90378c1fa60338cf951a9d7145ec245710637e90fdb508875dcc45
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:a539064234088a4ee13b8a9666ca9507208fe38189ee9b8b673a38a58aa75599
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-gcp-rhel8@sha256:035855c3d4b32a29232846d73dc398e81f941fd90a03e33241ca06f6e80b2204
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:f86e96edb0418811df328debdee93b4a51cf7f651134ee35e9c50b9dbfc29fd8
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:31b3658dd79c18111c21e99aea52cc198f8e95b458a1a4f8d2bfc4d21e9bdacb
        - registry.redhat.io/rhmtc/openshift-velero-plugin-rhel8@sha256:92a3162c705537147005a065cdddbb410e1863d80c08d8b0f27b7ff5588500cd
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-microsoft-azure-rhel8@sha256:084f1e54ef0d7f457d5a7cfc57b567ad8d85237c12f707c82f7a30a54e3652ba
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:1b8008a16a0f53c09ecc5a219964194689a1aeb01acee8313aa49a9c26259429
        - 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-velero-plugin-for-aws-rhel8@sha256:c001dc96a1478a58f30461ab018e40bede13a78f3cdce869a70dcb8b9bba22b1
        - registry.redhat.io/rhmtc/openshift-migration-velero-restic-restore-helper-rhel8@sha256:b137e1345038c9e566767f24cce60c03ec278f5a2efc28fa08e0bd8bfa016486
        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-log-reader-rhel8@sha256:6d8c28c61ae5cfd2b870226f150248efa1f7ea4c538c5740587cf3f046ebd5d0
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:9b7b4fbde975ee49c20442b7b410b900f60aa2856856f89ba20d4700716bf49d
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:977e9f27271b53d72c53e38f44d01cb1fb7e8ce57ec715b8e7efa3ed66d91118
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-mtc-rhel8@sha256:93aeafa4df87367cc6326048489a0d7642b9ba13091c6ae4a3d04d45a7e6871c
        - registry.redhat.io/rhmtc/openshift-migration-openvpn-rhel8@sha256:ab050267fa89bdc400ea9ba8434acd11a0cced415e5d52512adc2db713bcdd2c
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:da5bea3530580d60fe593f03927ce2c561155fa914961aa4152fac8fde3b40a7
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:84492722125eab381eeed49aaed92b44c763b8f06cb2e2859031f486df4437de
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
        - 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-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/kube-descheduler-operator-bundle@sha256:c0ebb8c7fbaa325fef3d530da8bee7ea8773aa082c9b16f174c41ca4465ced24
        - registry.redhat.io/kube-descheduler-operator/descheduler-rhel9@sha256:e9019ca15608d3d48a68b97283ca07db1260bb92bd81a500f7d987a485cd7a1e
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
        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@sha256:ed68a0574ddeaf7d676403cd843f28cb586894f35dbb3ca5e06a5264bd42f030
        - registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c
        - registry.redhat.io/openshift4/compliance-openscap-rhel8@sha256:867c6d4205653d8a954d234cbaf470313009eb983d4f455fb45f49c4a7764422
        - registry.redhat.io/openshift4/compliance-rhel8-operator-metadata@sha256:1c06868bce1f5d7145ef658bfcc284c44011aa24a17166aa124547b38f2259e4
        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-selinuxd-rhel9@sha256:3278d69814a8d0d1e31dcdef454c24828aadbb468a3d5d3e15910c76481765bd
        - 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
        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-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
        - registry.redhat.io/costmanagement/costmanagement-metrics-operator-bundle@sha256:9cf11bd854c76e2b344c0072ae8487acde31f6fb50e2c47937f95186146f40e6
        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-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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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/ibm-bamoe/bamoe-kogito-rhel8-operator-bundle@sha256:e0e7fc3a69575199a6fcf93985451dd66a5eb7d1ab8caecf059d7d52f3953dc4
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        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-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
    - 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-istio-csr-rhel9@sha256:9ea2c29a384b964cef14f853278821df3cd30320f25afab8823897192f67fc7e
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:cc20a2ab116597b080d303196825d7f5c81c6f30268f7866fb2911706efea210
        - 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
        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-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
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        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/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
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:0d2edaf37f5e25155f9a3086e81d40686b102a78c3ae35b07e0c5992d3a7fb40
        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/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
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:5eeb9f00760e286b2088fe4384bc0de5b18178fb3811796608ffe98d1100312e
        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/vector-rhel9@sha256:011570d92a596fd2895230b19bc34a25f8befabfed6b7ce2f1e2bbe211391d22
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:022747902d768b6bf95a76c7c0b3aa63af356566b8411448cf64f87fc31a4794
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:057e1b87e9b9419d35cff1ee0ee8e19bbf12e6ecf3ff014206b62ca44e70eb07
        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-rhel9@sha256:8d7407a15dee92f15e8c62ef8a23c02b94bc59d1dd6595f9dd3e05f5a01cf9a3
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-operator-bundle@sha256:bac746437332ab19a056edfc42148904de392c787a79dd77c2734b2dc34982d0
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
        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-metadata@sha256:87448055a162e215a4d4982a8494fec6e7cc59fe6704494ddfdcfea076a2100c
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
        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-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
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        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-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
        - 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
        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-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:088dde6eb9d239a7a34b6e47a1bc3c3f1f74aabe764744eb9554913181b4e0db
        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-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
        - 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.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-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
        - 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.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/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:a2e2211f218d13fea1c2bd232a87378f3d9f656839e48c72d93f4f8afc3ea702
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - 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-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        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/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - 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-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - 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/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:fb284b670f3c4c28ac3bcc6a16d20db5ec38165750baf6a03f1d3b7cc316027f
        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/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - 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-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:88d59edb37c5c1588e22623e1a0c8c2e8bd793c52f2f8fcbedf8d6c4697874e8
        - 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/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - 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/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - 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-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        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/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        - 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/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:e52d16eb8343528b0d92860486ca3944e6f49fc9d8a2057c247e387bc3685abe
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        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/jboss-webserver-5/jws5-operator-bundle@sha256:bbd477f0b3ea615bb0342a11656be719c61e1f9bccb3235e071d8590944334dd
        - registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - registry.redhat.io/insights-runtimes-tech-preview/runtimes-inventory-rhel8-operator@sha256:58e01d11c3d30abc5b0ee3795511bd04e39aea21e2853b4f4cc6d1c8a2bd7bb0
        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-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:0ee0bd2449f183277af845e312257b4a1ced4de865831b15e1758a397d8d29eb
        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-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-operator-bundle@sha256:fe40f5abedd62e8ac2a354ddc7e81e158615682c753ef942bca238dcc3beb4c7
        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-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:4478b8a78bdde23e0d40476f8ad9e4bf0628fba7603a390e8de7e6a319abc1ec
        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-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:8b475114a5f77f7c041509a30246769a5f9064510724c8fc99ac29164dc3a0bb
        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/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:73d91324ccc995e9a6db525f194bee340c17dd624ce520c767ea8fcf2346f786
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
        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-bundle@sha256:d29abe14abc67d8836cc6f7656556a0a7fa8f4a8eea3f78e40265b339e7430f5
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        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/quay/quay-bridge-operator-bundle@sha256:7cace73b03bb02202a04b6026eb9f7323610fd0ccd5ba18a6d00fd66577a96b4
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        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-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
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        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-operator-bundle@sha256:fd9c08f0a1455f7c20f3ef00983bd2cee495f6fbca7e30e3aac52512d71abe42
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:a4255931341242cacf44202192e8f69805cf359282b1753beb7933ef3b088dd4
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
        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-agent-rhel8@sha256:a8e60d9f63e2ed0cf1e27309aac54014e3f1efc947b51ca0a99376338d220875
        - 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
        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-operator-bundle@sha256:783c2df43ece311bcbaaf30f33c081608e996a0f651895ec0509bb73a6a1f590
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9@sha256:c3b17e2ff30eab6e64e8fec59da37f05ec65d91d8d76086a9510372b20eb78d6
        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-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:35498d3e82e157b35b5f2270033ddc88a521453ab90c3b95e2a6a4cdf62c21c4
        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/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:747108b5f119ea96ab3c8f6d7035b1e98aa8df879ed772c94459500b5a715483
        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-openj9-11-rhel8@sha256:c8607d6538a7528e27e6ecb138e0a93a03b3c9fa1f8a9a5aad3fd9f4a6814448
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:a7641fc5f4c7aed4b73d7d98ccb58ef64cf14ab16d72378f56dba3ad4b8714c6
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4d8057709958ef60bcabdcec52f05eae8df121fd3f4762c3218abca38130f638
        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:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - 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:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:111d1f4ab8f006386102d1bec4cd6a41b446d9ae401a43c821b2f318c8ba74c8
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        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-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:9bc0b730570ab55fbeca83075949f4caa96ed5c37637420a59cd4a7db01ea840
        - registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6b78aaf15558c0522d22ba3003244203e6d39e6fe737c3075e30de8763218358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:0d368459c98c5788dd55d2add5b4b7d438b9a8c814ea8aee2222ea956699cbb6
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:11bfe5c8109d26164cff428232b2001ab8df464f14a382661b936543336e2960
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:879f3dcc24ffe795472779f777d955666ba4041c17e717d5e165cd7f12d7955a
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:c25e3152d6a6b6d5cd86d311bf567e594b9948440785209cd8d7986076a5a10d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:ad4f91f984b4b898012963d52e6ebcd166ec03e76e26eba3191ecb87f51fb18d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:1d5525d2d575dcc9d90da57afeb5fb310edc28d97d7ba55290db6bd152a34a95
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6e1766784b684561666134d41dca5331b80d50e63695fe7b1a1d6d4cdb73f0bd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:a711c50e489995fb60e5dec23ce286360743feda5066e4a0861d448aa4f2e903
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:5656cd188d054551489d45be996266d03e3faa8814b8bfc0f360cf0dceb83cbe
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:2461b1da4bea1e25b69a7bf8ef2173d905369e5a779134fa5099677da10cd8b4
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:48cf13e71953cea6f62354289f0d8ece7a8a481ee0bb2c76eb9352d438db9ca3
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:f59ae21773dfc207454a709ac5f7aad2be6a6a20ac88da26c379edeed54537b8
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:4b9bf39d2ff14bcfbd4628a399093703d87a2b2b9c8e74c3d7cfdff4b5167fa4
        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/3scale-rhel7-operator-metadata@sha256:771bd8187990f334cce038a647e9c0fe903fa7519994119bc995ccc7cfad8b6f
        - registry.redhat.io/3scale-amp2/memcached-rhel7@sha256:6195aec4725b71f46a3bc2982300acecafc9c4aabb4ed1bbec06de9775d49694
        - 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/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:6c53e72c31d1a3e13aa3ea835039f30869e465903262545463f790cb36ef5241
        - registry.redhat.io/3scale-amp2/backend-rhel8@sha256:3d5f1ef4e67f97cc9cf3accf25033e176fc59714236a5ee0f022c9eb8be7a4b1
        - registry.redhat.io/3scale-amp2/system-rhel7@sha256:13685f7ca51ebd1e21036fb08b3c2089a66cedb63683dca39925ec0463215fc6
        - registry.redhat.io/rhel8/mysql-80@sha256:158198936a7f7896e0f94133cd64c8e8902e4f86e670b56b64ff02acfd9c2855
        - 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/rhel8/redis-6@sha256:22431acc2c991b6ee6b4de0219366dee6ea745122a49a0175d5fb58ed7d9205f
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:4f807ee6e885e966853f70e1c40bbc179dc1f994b401ac868b7f2b921f9d17a0
        - registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
        - registry.redhat.io/3scale-mas/backend-rhel8@sha256:7d07caf7b6c5a195ba4706e82f3d28c3793afab99b1a6d5a7020547c48534cdc
        - registry.redhat.io/3scale-mas/memcached-rhel7@sha256:9c2aba45971c924fd55b2aab50ee8e6861a9defd3808b38ff30316727af31f9a
        - registry.redhat.io/3scale-mas/3scale-operator-bundle@sha256:a6c2eff926feb11da27eb9972cb86ee0ef9ca0b013afb6fe6af4f72439d557ef
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:a03a1ae7f01259192b8d7b4ecee6ddfcdc0cd9e2d24a8c2306accb93ee767135
        - registry.redhat.io/3scale-mas/searchd-rhel7@sha256:1426e4bd4aa0eb28b479900ffc02621203886280d24997cd11818387ff30d9df
        - registry.redhat.io/3scale-mas/zync-rhel9@sha256:419eb09d1b165363d5b90df01c1fa10f1f91f03649a8758620ffa49276685feb
        - registry.redhat.io/3scale-mas/system-rhel7@sha256:b0fd85a4994502a3a2ae9ba6a7610c38af64b6cc897efac12feb4b115a484f77
        - registry.redhat.io/rhel8/mysql-80@sha256:7c05e61c0f4f5dad6aeda136e9a1af2f04f4de3c51004e997d4eacae3778da17
        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/troubleshooting-panel-console-plugin-rhel9@sha256:b4a6eb1cc118a4334b424614959d8b7f361ddd779b3a72690ca49b0a3f26d9b8
        - registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:48e4e178c6eeaa9d5dd77a591c185a311b4b4a5caadb7199d48463123e31dc9e
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:21d4fff670893ba4b7fbc528cd49f8b71c8281cede9ef84f0697065bb6a7fc50
        - registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:1b555e21bba7c609111ace4380382a696d9aceeb6e9816bf9023b8f689b6c741
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:9a2097bc5b2e02bc1703f64c452ce8fe4bc6775b732db930ff4770b76ae4653a
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:12d9dbe297a1c3b9df671f21156992082bc483887d851fafe76e5d17321ff474
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:75465aabb0aa427a5c531a8fcde463f6d119afbcc618ebcbf6b7ee9bc8aad160
        - registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:e797cdb47beef40b04da7b6d645bca3dc32e6247003c45b56b38efd9e13bf01c
        - registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:a223bab813b82d698992490bbb60927f6288a83ba52d539836c250e1471f6d34
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:dc18c8d6a4a9a0a574a57cc5082c8a9b26023bd6d69b9732892d584c1dfe5070
        - registry.redhat.io/cluster-observability-operator/cluster-observability-operator-bundle@sha256:a3b8e1f3f8d154095f365ccbb163f2cf3852d6091b1f74773a8b5a2ee5c1cee6
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:369729978cecdc13c99ef3d179f8eb8a450a4a0cb70b63c27a55a15d1710ba27
        - registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:093d2731ac848ed5fd57356b155a19d3bf7b8db96d95b09c5d0095e143f7254f
        - registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:b5c8526d2ae660fe092dd8a7acf18ec4957d5c265890a222f55396fc2cdaeed8
        - registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:e65c37f04f6d76a0cbfe05edb3cddf6a8f14f859ee35cf3aebea8fcb991d2c19
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:7d662a120305e2528acc7e9142b770b5b6a7f4932ddfcadfa4ac953935124895
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:d8c7a61d147f62b204d5c5f16864386025393453c9a81ea327bbd25d7765d611
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:42ebc3571195d8c41fd01b8d08e98fe2cc12c1caabea251aecb4442d8eade4ea
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e7e5f4c5e8ab0ba298ef0295a7137d438a42eb177d9322212cde6ba8f367912a
        - registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:dc62889b883f597de91b5389cc52c84c607247d49a807693be2f688e4703dfc3
        - registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
        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/assisted-image-service-rhel9@sha256:6082629342c13caf33bde021724f5d2b9c400f838b74285a3c2d99d68a03b26c
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:e399861c4ecf3c1910dfc7e2da2b234bdc1ae1aba3a006f28285756edb2c9b2f
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:9b4294ee810cd554905c72fd080c3ead28a82dda81e01210552012e4a8f7dc5c
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:dd7c28e8901e1804e4832b2d3437bf8bc0e4bf7a388a94e6b9e0df07f6eee10f
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:7b3d109adb86a87475afbb76faef4a4131f78ad092d4aa541e1c59bae611acbe
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:45217815cc0f2bc24d5b7ac07019af9a0ccb13f8cda14713422b8b699f3723e9
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a187fc5e6c73bdfc63661b98c05b39ee4d0b3a0e1a210c49d188f1004bcb274
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:db28620adb4c59bc9811dcd5d0a743ce534f24e40165f84af7044a5b9d04b76a
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
        - 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/capoa-bootstrap-rhel9@sha256:1ccf3b85dde18875aa1b98797d4477c7fe725725c5b6d91b4ed21e3e3249ec36
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:ac1c6821b6bf2062144f8fc38256e97c16a55019efdff6bc0f2469899508521e
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:43ed1820a27580f8fa9c80d53590d2b5cd049c925cb57c8c396512bddeed3332
        - registry.redhat.io/multicluster-engine/cluster-api-provider-aws-rhel9@sha256:1e2fe8b42665e7bfc7938ea23a0a8efdb98a6825238f6fc90993926cd8d2317b
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:20776e91176dd86feb16fb24ebcb087cea368f5778573edbc39df47a1dcbe5af
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:5bf1563d90623b6f224278f58ceb79ed7877d88eb3af50826fe8588735535efa
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:243858bae64bf199c479086f71c222b096555339c3461d7d1bfd47cf4e43df14
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:77834bc71542f6c87c1e39c82513bd9c2007017cc4866a2d51be7694a198c950
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:7a0b186fbdb169ba82e3ff4a0beb8a3ac2d1ee555bd37182ee9d92a945093b66
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:2b725421986812ce501db94fe0ae5df6ae3e2a8bb31be6aebe24e85cd1ac4703
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:9cee55eaa91e073f07000da0db87fcca4f34af6faef16aac79415197c3026e67
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:0b9dbc00f7f579c37197ed3c5fad6e1420034f38418c21a6d83e57761763e715
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:762ae8d88d1b9e764adf84d5eaa964e691acbebaabf174ab0111a39b24256aff
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:17a2e3c30f2a59f402723dc553564ec1289b6e2bbcedb9cc353285de9f5e42f4
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:aff2c378cd0a3ba36b13572a4749a54836369bcf6814b8423793bb56178b974b
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:4de9442def18fff03515edcce7d4c60a756f3b2c225f8931a8ddd254d70b220d
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:b689ee70b715a65b664a2e31b5ac3b1a70d6a7d2abff28e99013094468c2e32f
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:bcaded7338e5171707c02a04216fa1bbaa5b57c8da9af0df91347ad6d84e0d9a
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:262db9468caefa25b66176fb3492c5b310c249ee1035d866b6a1faca30318ae9
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:a4f11ed7ca7a36516a88d9e179f654174b4654d71b67f2de3255a95f9929a452
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:78fbb9cbf3a7323a1d235e33323033957ae9e610bd0e26c493b407cfbadde258
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:eee2a6b322f695529d9953d06ab021f0ea0d69b9a2a2f7c3299b0ede8106c102
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:38f65ed06100af8f55530fd79ed5064f3839863caec0f610385abeea0e3c1efb
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:d38a886f70d079eed24b9fb57030f535e37524d6f7baf6b1022be1c07cc32ab7
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:1cceec46246ea7bef481549dce1ce91880d19a5650c9a6bc0f71f0d4092a6f95
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:753458389b93e2dc76f7d8766345f7bdfb3c3ba23d76e938b04e724418981e73
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:1b5f810b07f1830f4b71a9c384465806ea74e264770a90cd92cadd53c7d7e1b9
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:d0d9f66e1135e46889d9148a78704a0062baf69c4690c85da37588ccfe4e23dc
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:88be52d369e7862c378fa2c6bb0b5f7801bb68d773744935816411e549d51112
        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/addon-manager-rhel9@sha256:b622c7a3e14a3d80b01c66fffaf5fee108767fef90976d7ae981d79bfdd1bdf0
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:147e0635014afe58dd58af3d006095c8069e4746fd753349378435363add304a
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:083fbf9b0eb35119bb95652e3f8cc3f38f2ab66b38811f36938d19efb0f09456
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:9556277ac54246d8132dc08c8854992b5c478706ad483e1bf2e16c5e2aa04a04
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:878fb0eb1102cdefdfd7d266869a0a8f7cb19a1b8f0e5741f75755334e67c887
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:e97bb0c19ad0075422f4afadf82e3a5d6bfa24bdcf484777486d0d52c9f294b2
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:86859614fae3d7f6dccc051ce90b055d1b4b6f313d9b85187bb6dc06e9d59ae2
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:34714647e5ae36f266b3d68b56abbd0a79c8f4e05c4c9076cd0f76dad243763d
        - registry.redhat.io/rhel8/postgresql-12@sha256:af1ab437b165fa4ee9dfd6ade637d7de5fa556d0b3851fb8edc78afe0e6fa95e
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:d90b77447584cc5e03ea8a7d732a57ffcb09a4d0a0231ec41ff5a67e96a42273
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:7c9fc8014eacde9e9e598823815acd4ea61d5128a84c79bce914fe77ae276aef
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:951773131a05b2eb4a39ccf568b23cb633c926546e43227d5f715e73441b0b89
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:5b4a878a07934ed035dae0ab1b86eff1166124565226af5739dd8aa16ba90d50
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:cd9f96afaa76332885dd7762906681e32ee7ae8ab268e036b0f9874a10a99d57
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:f4c21f87dd7b725f472f51829bbc40261788e0f64c391ab136a3d6d8d9235872
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:0f813721abc29eb84b94b9ec6abbffa64d984bd7b5b76a810ef454a70da8ec93
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:03466cbe5b770e1e7b124109dac09840cdc6ed1bec56de9b42dc7cb8278d7f0d
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:f626f057664e3408ea5fd778e3d2a4e80735ba858d76749a1a2056c65face4ec
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:e9f7e03889d1151381a65cc41a3fc24e97b7e0169c43c91bb8dff54a6fa7e837
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:462fd64a59c1915d91d628af10415107b7ab4b03ac322a4c77687064e5f89421
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:e9b9e2dba46fdced4d9276082956b34f1223dfaf7f6da600efeee5a42317754e
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:05b87e707d6e0b2fc4cea9a22ed5b0c23cab8a38ee4cc9e8e5b9f4059e7b2dc0
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:55388553b68ad695bbde73addc43a68fc4523c4477f979ee1e8103b79dbe0bea
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:6028387bdc2e8cb2cc62a22ff242d4c4315ccae94fd93fa9ffd7585b1bb324f2
        - 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-service-8-rhel8@sha256:03446585c076f6f9983dd336e1ee47c3955830b94a5e81c5c256d627ba675030
        - 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-installer-rhel9@sha256:9520707d782b393e2e34061c18b269a1b610143d8b06739984776101b08db322
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:b583869a3c3383670427be20a3b01fa5eba42c09fae0c8401063b0461831277c
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:eb2d84f5038c12c558bbfbc9441c18337051d0ab64264a0574232546fb9fea33
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:61856d12d173d98c9cfa6596cc9b19be38e8f789712dd742dfa613a1d585f53b
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:92bb8f1e74ca9d0938d92f84f85ca047e8abc6be6df54eb6d8cd506f9393f6ba
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:358e8a39385d43077c2464d1cf037e3358c8eeb7e84958671acb1e996f070d25
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:ef9d311b1f5b5b386a6fc224c0fbdd8794c0ccb4e6bff11939c8332f48da8fe9
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:eee3c75b6eee3f1c0374cbbeff415ba8e28b9556edbc76d2bb01a10246c3bc6c
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:9734a109c7be60f5871132379e8c88c0f92a9a991943de317040ad8550637477
        - registry.redhat.io/openshift4/ose-aws-cluster-api-controllers-rhel9@sha256:2f3b87c980d89161d93ba27ae379537ca9b603aed6de7b03e1720885231fe519
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:52faed21cd40448dd4260909e2de026155afc207f1ee26b396a75b6099830525
        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-operator-bundle@sha256:f40e7955ac649c383134ab6e77bdd521b75b21ecd9b476436405d0674c7fc855
        - 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
        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-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:ee3ea20acb92c12d1808076f00a179da61e632888e8e59e0e2b8b5caf053246c
        - registry.redhat.io/openshift-service-mesh/kiali-operator-bundle@sha256:35096e1737e500ad148e9f5ca2a14554a5e1b4f3104782f00e8322352e365833
        - 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-ossmc-rhel9@sha256:73c5c6021261336e50b34210f7ca4926511e8f11ff4d29f1305a0236dcc19c5d
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:99fd79555e907c2a84d0ffabb07fbce41313f800dbcd73edc6ee39773b5cdd23
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:bde79c700c879bae1bb67434f51b3b202d7072de771cf8d86ee65b5539b9e347
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:3c562a0583789ef34b25715663a66fc099c418d067e8cabd3c16e149f995d3a7
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:5e0f84a7ea17f1969dad842e2b8a7d3d868987e93a8e07ed8c2fab029618b8b6
        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/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:f182078b0077b6df6d47ddcab0204e963c1475486bd61b8eccb73b46eb8b2995
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        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-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        - 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
        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-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        - 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
        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-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
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        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-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: 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-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
        - 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
        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-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
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7c7c42fff63e0599bb943a9e9617b43181360d5a5254b27f368010af275cf0c3
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:b03f4e88ab1fed4744356a584d673fb2fdb15de7e1de7786bdd222b853690670
        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@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:bbfddd7cb4a6cb7a131a0cef174054890fd39956d63e737c92fe8233ad8f98e4
        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@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:791ac512370af5cde1e089de3def760e7dbce69badc03137051520ce316d63e2
        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-operator-bundle@sha256:2808a0397495982b4ea0001ede078803a043d5c9b0285662b08044fe4c11f243
        - 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
        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-podvm-builder-rhel9@sha256:9efde29746c28defaabce25c2f0c6da7567ca7dc7fe97845886d7d9e750ea094
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-payload-rhel9@sha256:7317c2d8c0ac8e542e39d695851c4add301593d2b52af80c77fd4f996efbe2b8
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel9-operator@sha256:b59db913c24f866a700d7662f3fd2de238b4a71550f2f04673ef3ba62ce35aa6
        - registry.redhat.io/openshift-sandboxed-containers/osc-tdx-qgs@sha256:86b23461c4eea073f4535a777374a54e934c37ac8c96c6180030f92ebf970524
        - registry.redhat.io/openshift-sandboxed-containers/osc-monitor-rhel9@sha256:3c1434943628c01f102615115e89e384b4d46ccf2fd6c0abd5205917afc4d05a
        - registry.redhat.io/openshift-sandboxed-containers/osc-pccs@sha256:de64fc7b13aaa7e466e825d62207f77e7c63a4f9da98663c3ab06abc45f2334d
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-rhel9@sha256:408eaaac58d01892aa2087153eda6f451788c02b8b719dca8e710a8916b2e081
        - registry.redhat.io/openshift-sandboxed-containers/osc-dm-verity-image@sha256:0eb5efd518128ac6df93fec2e5d24c4c5662d5407e016d1f66579cc9ce4529ea
        - registry.redhat.io/openshift-sandboxed-containers/osc-storage-helper@sha256:c9b31c8acd23c6925d6bf193696817f14a52b0f0fcbd8459023b5d69da93482e
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:7b2035904ec464fe32c55ace525f573a491b046b5ef7cd5721d7a67cfc8dae25
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-webhook-rhel9@sha256:4a533f77a4f1415b8eed0d3f5a4ba9d62edd329bf304f26f23b0c1d886dddb71
        - registry.redhat.io/openshift-sandboxed-containers/osc-must-gather-rhel9@sha256:e4bb201c368afbc80eced2aea0869d152e026253a14349a01e2088f5dac5e214
        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-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
        - 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
        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-daemon-rhel9@sha256:7421edb9be136cc7102bbe8f263108fde6cce3ed411afecc241d8551ad56961a
        - registry.redhat.io/openshift4/ose-dpu-rhel9-operator@sha256:82ea8006f9d969c4b6f9e52d75ff81d7129ef0bee37ad7056769b485c0760aa9
        - registry.redhat.io/openshift4/ose-dpu-operator-bundle@sha256:2b968beb8b658b8f16257842d2594f4489116adeb76d5965b7642c982ed9d18c
        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/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
        - registry.redhat.io/rh-sso-7/sso75-openj9-openshift-rhel8@sha256:2d4ea7226f43e7e8e8d3fcef6d425eb5104a15acf07791355033300b80db2901
        - 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
        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-bundle@sha256:c542bd411eff7a4e875b942b23452aeed8e5d60e606f87a73e16f48420fa2400
        - 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
        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-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: 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/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        - 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-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:d5b404530b7d6ca8c7eec484dbcff32544c3ce8727a4d61c703396ae3fded62d
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:a0f327daabcd97e59a855450a4ac642e45e8dbffa6a5f006f23525215f1c1a22
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
        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/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:64537ae6999feb2c7e449d8d5a1cdf5f64450b45934a7dba2b82542a5f6adc20
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:0a2285aea9606696c4ea75644f2019bd199c6632de4b7f459f4024d5b3f66048
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        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-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
        - registry.redhat.io/integration/service-registry-sql-rhel8@sha256:6c97fa8ead1f6f0323811f8f35a80ae33f0e160f6c58f2bdb31713dbeaa3f014
        - registry.redhat.io/integration/service-registry-kafkasql-rhel8@sha256:fc97a2a08b2f77d620ea86ec77bb4f750bfc0109ede3ad1080c2cb694019f8b8
        - registry.redhat.io/integration/service-registry-rhel8-operator-metadata@sha256:a2f0513cd8b96d71855464384cad7f1cd8c39f8d445be1ff1c1b91f22008d16d
        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-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
        - registry.redhat.io/apicurio/apicurio-registry-sql-rhel8@sha256:0e5b7ed0d9c2aa07896f4d1f12c6ce6937f31a72f8d496b95c9c151121f46758
        - registry.redhat.io/apicurio/apicurio-registry-kafkasql-rhel8@sha256:f8f826084f842293de019ccc9ad0268e4ec0957e0db8fec58b069be2d6fa7cfe
        - registry.redhat.io/apicurio/apicurio-registry-operator-bundle@sha256:807f6c8f10a0f14789605e0dc64506e7aad7cce7789446da5079a49e79b8721e
        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-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:3101db7b7f493e476ffe2c91083792ded3e2030d431c3be7d7176ad7df185324
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - 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-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-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - 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-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:231965a888729ba42bbac8d844d128e18468e5a21916dcd525d43ef028ccea5f
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        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-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - 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-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-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        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-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        - 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/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        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-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        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/rhdh/rhdh-hub-rhel9@sha256:d7ae2456857cab09a9e9acf69c9990ef18deb7f920046b8c2483fbfd0d42bbfc
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a93b382258a34e0b56ef6616a8490e5f44ef1c6aa5d29c0d08d2147ae5b440e6
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
        - registry.redhat.io/rhel9/postgresql-15@sha256:d5f3d496ecd55688e384cc0627700a97af6924582123bcf00749c375724af3de
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:95ed239eb427c7b1e422ece28c5277b5018efb751c2b472bf502b8216219c047
        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/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
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        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/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:b4934c45ba595b36e65c73b734c58d1517e7f43b7cfc309ca8bc853733582f76
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:c044fed8485a62a5051ac726525da546936be22f268db05491bf81582e0e6194
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a7ce92f7f4aadca2781c44839bc357615395587bc8b68a735642967cf8694362
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
        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-operator-bundle@sha256:5a19032dda9a0f584b41cbe9e729ed23e6003d90ebbb026eb9e7bb9769d4a4e4
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
        - registry.redhat.io/rhel9/postgresql-15@sha256:74377f5a61dd7e3e0ba5d2fa880b7107025433a026396567c79eac927b4212bc
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:2ad8c87e82df27c2b6ceba94179d1f0a40fe775368663c1b5572611888e0e02b
        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-hub-rhel9@sha256:177a7308f61a6b1ba21bc0f7bf550a93d4478e52479e2c94a2437f2152e3d8ff
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3b2cf972e1ced0a46d3559da4eb1a1b32c50457293ede4958a13538a84b45316
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
        - registry.redhat.io/rhel9/postgresql-15@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        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-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
        - registry.redhat.io/rhel9/postgresql-15@sha256:990be59eeb55860a62455375fef7795854d78ce15ac3e7568b9bdb4680bfcd97
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:b5ffbb3cc1caac4e020abf1d711566aef859b08e479ab181e5b39ce9da7a5b73
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:54c5cd2a4865a372ba9465908f73928382745e04ad446c97b28adde213d13309
        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/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6bcfa981a7a75c242a16afa6dab36bf6e3b8a1442fa863875919ad551f48eceb
        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/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - 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/odf4/ocs-client-operator-bundle@sha256:8417c655f110b508f858c1ff2a3d0315e0dab9baba9afec846f61c71cb294477
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - 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/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:de6cd74955a0403d8ff97490a657b941316d69922e901fa3513f1837fb8d981b
        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-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/odf4/odf-external-snapshotter-sidecar-rhel9@sha256:87b5909be13793b80ab8cb916458c8863bdff29a7391630af0707b39080b8ebb
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:a7a7533e91939980298a9b097ae535a40fb179a4f4d26b3194b13c396b845d17
        - registry.redhat.io/openshift4/ose-csi-external-snapshot-metadata-rhel9@sha256:da5c73b33774046408736738fac6e4bd82fc0f7c0a6e966e788941e81746fd28
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:954212cfe5ee83f95fb844f0b59d2c5230c0a0a0135ab4953f24e29ef4cd0157
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        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-operator-bundle@sha256:fc0ee45511674e99f3ecd1b807a660e4bcf49af77bf5d66af935d1cb16336bc4
        - registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
        - registry.redhat.io/rhcl-1/limitador-rhel9@sha256:aff28d76f9cfeefafd6b652e055bb25e1a2bf250e062e3e9b5e54db873f9eeb7
        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@sha256:0f7d8c9aa266a124f571ca2e58f0705ec7257e2cc96f353dd5c41a6f9de00f4a
        - registry.redhat.io/openshift4/pf-status-relay-operator-bundle@sha256:14ac9f4b837706b9ff92cf899f395e0c9f3758d2ab5c1f2e094a6ede45b24023
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/pf-status-relay-rhel9-operator@sha256:d3429e65675d7b1bda2158db44a771c3b55fe6a3f269e08fe6ff9ef224226772
        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-generator-rhel8@sha256:4c493a2d690d0d7c1684c53d15c06b47d691aeffdde6dd471b6e75fed2fec6a9
        - 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
        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-generator-rhel8@sha256:bee0eeaa7898af835f80c5217059d73361daa42197fa6cbbaf416e1ba373eb54
        - 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
        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-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
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:323f7d1fa408dfa958afa2aba0fcfff69cef78073a9b1cd4d70d3908e46fb8f5
        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-generator-rhel8@sha256:dc39b79c360511ff999eba5b2c299db3e08c9c244a0a1f3da8c90c02695e506d
        - 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
        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-online-1-broker-plugin@sha256:2466a336c0d78b196635de3fad636aeff2d9265839f7271b8ef94f3ba97d9bc0
        - registry.redhat.io/amq7/amq-online-1-standard-controller@sha256:070349af30cec52fa8efc185fc940077a64bb40e3e36310d7cc6e39ce0971436
        - registry.redhat.io/amq7/amq-online-1-agent@sha256:f98ed8ee97ac59d8fdd40ec8b2c063a5afd360a3e183057c186e7a77a32801ee
        - registry.redhat.io/amq7/amq-online-1-console-server-rhel7@sha256:1dcb3d0cc7bc6e84f4f96962ff88849511b7a7686a1f5dbd9300c4c2c8c05e2f
        - registry.redhat.io/redhat-sso-7/sso73-openshift@sha256:18d15980f28f0d0c6b8582131a1f062d84463577512875b5391a612c3d7d1096
        - registry.redhat.io/amq7/amq-online-1-address-space-controller@sha256:9acc555c8e869aec7d72f53b60320e1a96cc82d748638e0d50970837229fdbee
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6d489a7897bd831ec273034f1ff0e223427a40afd01b9835ebb020a8bf9ddc66
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator-metadata@sha256:d6d0e71f5451e8255edfff87ef28ba7743fe7057efd53b25bbbd01bf9e1d0307
        - registry.redhat.io/amq7/amq-online-1-none-auth-service@sha256:a013fb1806c002b408a7753ff943cee24fbcdf8a657eff1e9582c42b5a7b0844
        - registry.redhat.io/amq7/amq-online-1-auth-plugin@sha256:68926f434b2f6ce4d9698938bc3c53d514c21c3f76c73b6b4cdf7fcf51f7cb0d
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
        - registry.redhat.io/openshift3/oauth-proxy@sha256:59b20f23c03d0012ec5c95c4725892ee64277c22dedc9d0a90a7b6b0bc80fc72
        - registry.redhat.io/amq7/amq-broker@sha256:1ec0437bbd82722148fdbb02dc55682b114c311cd6f521a8bc621a8c1cb4b32b
        - registry.redhat.io/amq7/amq-interconnect@sha256:5ebd4c4a0ed0db2725ae466550c915531b32933c420344cc2083c616da3f326f
        - registry.redhat.io/amq7/amq-online-1-topic-forwarder@sha256:de33a701339d91a4e9275f7cf65f917ff75368a59b8ab36dd66c90bc306875aa
        - registry.redhat.io/amq7/amq-online-1-console-init@sha256:0970804909b82fdc3d4e7d5d88280e41157d743107de8bfa2d1baa1367543176
        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-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
        - registry.redhat.io/apicurio/apicurio-registry-rhel9@sha256:fb3fdbb49017c86c25058c824d833be061cd4f51cfe6b43ab5d7f799f0a87e78
        - registry.redhat.io/apicurio/apicurio-registry-ui-rhel9@sha256:9daa045d14192754950aabb4c0a741f29ff4f0f431cb19c12bd1268ad21de639
        - registry.redhat.io/apicurio/apicurio-registry-3-operator-bundle@sha256:0c29e835e253ff6bc0dfb2a9ca01e94756c8995f3396ddca07dde95c9e16e633
        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/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:3a398158d10018bfac5df291d6998b513cf9a30e5477bcaefddcf66d229627c7
        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/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:2bec31b0c5407ffcecfd8b860d8afb1629eaab31a250f60191f94a824e0a52f4
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:0905ba3f5cf87780a1e95b6a00ea7cd340d4ed1b5054e4b2c82406270baeaefa
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - 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/argo-rollouts-rhel8@sha256:b5c8a6c7438a45125fc7fd970946f715ab7193b7446d625fae80dde9d1f3f914
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:4c842f0ea8f0e9b53eb16d94488fc2f4298bd8e4be2f48713be9157da24549e6
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:ece2fee4227ad1becadca47028b78ceaf8717a98ec84e3f1b5188a135c4b093c
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:c779ad87a7f71d851c2af818abf16e5151c43d3fd54e64eac2fc7117c00753f5
        - 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/dex-rhel8@sha256:a74e0a1fe3589ebe9f226a2bad20e9a5d5601a0e62c5f3290902f466f55b7160
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:ed530db9b4a29fb591ea208cd0c6b3b83b49537ff5a0a4f501b54ce667f9b303
        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/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:31bdff225bd825d02ce0f468b1edc77541ce85b7b9111f14a583c418c984232f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:0b926fc9eae775425faa1ab9709a36fdac15afe4bfe523720e17ecf5df45bb28
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:42f809f32f1d43186b849e3cc78063d3ebb2b54c55b2a1b77908af09a5ce044b
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:eade50b8321c1b2e0a8ac4dcb34596d43dea0a137b8b97b6eb68c6d469c8b200
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:0df37cf0a0e48efae02a0711c6da61c6165e7856db97097e98d56c8b6a137bb9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/rhel8/redis-6@sha256:c4a98010f7dd5faec2047bb9803061704233a8efc930be2a02386ac16d062d86
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c94c2167dc957856682a104b9a6187d3d321dec71ae794acc0dc37794d2cc373
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:959de6a95ef8978f66fdbe1033bcaa0ddeff9a376023e5d1d2698c5acb417305
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:7ea96000768b3cf7711150531c4c1c7edff2c45a2f29fe10bd9811ab6b281909
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:4d22a7a6cc2f0442889512267ae3d9356f05ff0dfdbbe137c3d8ebebc24818c8
        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/gitops-operator-bundle@sha256:80198f65f7e3f9022a34e0342e9423807b855dcb7bda810172eebc9a27afb5c2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:73918f3b3c507fc64006b7a500ecfa9d58151d694852f696c41a4412edffc78e
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbf3038daf7c797123c511f9a609c3485cb1a5bcae53c614fad17e0a65fa7ee3
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:7d82c719b1cef64607d30e8aaa5ab293955771c5b1dbd430e0befc988a43356d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - 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/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - 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/openshift-gitops-1/kam-delivery-rhel8@sha256:1cf485a889c7586cb4944f000b53c0e97d08f97ba14e580bec57dad7cb13712e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9e0fee30842a16d7b8a39d336123c80c5271cb2ceb50759fc7ee51a4ed09ceb3
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:33bbb88343285a0510670384b87d0226dd6de8aa12c78b68921362c4d6f5a6aa
        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/dex-rhel8@sha256:e87515d016565bb69cb2c2ac40432e0127dd2cb20a490ac82019836032ba15e5
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:f04d565eb5162fd5a9c78cd8443af6a3b184a660277537f1d6d575caa2e85441
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c02dc2c79ee24ce5450ea4e19493ac2a1997eeb5bfd359291642c529826d0cdd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - 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/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b982df02ea7c45a7603d83fe82cac12e1faac303a1b72af6a727512bb97441df
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:3f2804bc2af437ff1f06c214b48a1a780dfcfab995650d901c03270057eb9f3c
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:a366229e6ee26ebe2d7f765b2a2da6057a29e783835655b5d97545ac563b541a
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:bde11fa83b7e708677b08ea995041f480b88edfb93e4a62c10380d101c0a349c
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d4d5724f67859d24c32f0f5735f5af3e325f77db97f58bc7f17ed4b831b7e534
        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/kam-delivery-rhel8@sha256:b7d3c882fc25fbbea28951afb197d4d47ace253864889339396e20f0c6897a7f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c369df980874aae270ca7bc6455f1ca45467d75d25fe80d7bcb06a7826bdeaa3
        - registry.redhat.io/rhel8/redis-6@sha256:a9f30ed08abcab0122556a5485fbcf6e0fc03860f19954dcebdbf5e754876a45
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:2c45cfc01f9ec7577afc09cadc4c1a6f470836f6a0a7c24d66b791913f89bb05
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:773592dfb9964970f444871a8812e8b74db3f205faaa0bf148defa1a2b87b649
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:7358787959af7e7e589edfc043a97d80ebab87536bde365d33be7a600071bf0e
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1112160243f227a5d393eeee165bd4fed0d3f42646a9280cbe9af60ef728aeb2
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bcf6b3136a5e71803cb518c8763c165bb46ee37ef7bf55503911d7fcb36b3a8f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8096f824bd96e3148cf4b6936766c888d1fff0af9e9d0be440ae4feb6adc03f2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:cd4965d91c163160bcf43a02c54ca60b8704281c95de904f904df942bfd83bcd
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:97e32825f59c33cca7d8dba3580095205c20435ccd15b91cf0aff37db9841e0e
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:42a79aad641e8607fc339e4ce7f9cf1d258be01f863dbc31a94d2c27edb645bd
        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/gitops-operator-bundle@sha256:0b1771f697a700263c5b827dbde56a5c9bab610e9d7df55ef93885a4e54cc0e9
        - 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-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d41454824632475f0e88aa6e0031ec643bd37e1d575df36cd3ee63daf1403281
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:911733d78ae6f36f642b4d63f044cd102b7eee170508eaf518ac7acf0f339698
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a9e2360f00c5c9840a100a6748bd905b8f34169140a33fb0ca4af9cf6db71642
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:5bda26e2c16beebf66dd8f3c3c55d48e2f00db870f2d9d4d44570d9d3b8bddb0
        - 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-haproxy-router@sha256:2dd72760f736ab13e87d6e507e654c390d2d6af3154c6adb85610b5f58085b9c
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:4d945dd1a6fc0e8b6cfc16f4359128f1427b094e76efd4ff31325a1839246107
        - registry.redhat.io/rhel9/redis-7@sha256:2fca0decc49230122f044afb2e7cd8f64921a00141c8c22c2f1402f3564f87f8
        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/argocd-rhel8@sha256:1935460f871ad2cc9fe097e1a7e32a67b4b4a3c58aa0412cffc28823f4ffb49f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:2d361df79b6ea75f15eed2d6726303351298b47b4fee75aa8aac255a19e1ddbf
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - 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@sha256:1a4d9d6d6c917a161fa3797fedf722a1ba9211eaa4c52cf976bebb629eabe40c
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - 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/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:636d307f13d82dd8984e362490fb3c8938b05d452e65f44c7c247e7fc4a8be8c
        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/openshift-gitops-1/argocd-agent-rhel8@sha256:56ea8e384f20a903c9b42da1d244f0ec98c77916e4efebb53f876e459761038e
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:eb6bb1adf263abf1cc4f297f9db8289aff4c8bd73c3f9b8968facc1bdd2ee17a
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:724b4f15d0c255cc9c096cb44331ddc2e6456d4909d03ce463478af76b33304e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        - 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/argo-rollouts-rhel8@sha256:c02ad9e0709fbe52a34d9e8c146c90782cd49e351ce27e74e299cb9762246562
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bafe22c773f034d4cb4c0498f2f669abff23927378b424a05ba13b196f242710
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:e1101b02df32a56a9aec80639372248b72963240dc86add446d0d07da65baca7
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8ea41862301665deb2eafd16fa19d4d76663cd20829256b575ba7090889cff82
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:d5233a088e71464f08d05f8a1f04efc236684634c89afcb93dbf3ac81a740a82
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        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/dex-rhel8@sha256:89263c0ed73f6f3bf6f73d9ed32c459489e1adf2b423ab73926b5343064d88a8
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b4d6b30d562e1cacbb1ca461e8c14b95c0d42be1baf876599c446669f2584feb
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:684edd8ef336440fe06964bd977c0051ffb1b4df00c47ccabed710c48d19bbc3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:d7cec49c3e3ef02a3378ecd94f64a7e94f5ed93b5e7e6ff81f8d758eeabcb7c0
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:d5cf5da89528ed1505c0695183f432f1501b0226ce6402e84b7895ad14620d5d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:772adc241b808829d62631a288cef0b3d9cfb617f00d84aa3893616e48e30885
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:337d52feb9a42ad04aa91211f41040db48e2de3a09266a516183882f9f587a6a
        - 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/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c0e231e430daaff0b7a5b06f9b8628a2fe0ea3a82a314d42a364fe7f883f075a
        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/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        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/argocd-rhel8@sha256:dbcad68b70ab7918e944099aef4177c9bc3378e9ca49499dbb94a175927d3209
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0cc4fa704e581cd5581c816668183f602fae6ef9ab3c04ce0d99d561287ef140
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b22190de3162d3e03481cae8904ce563912756eea7ac7e7feec0acbbdae5e6f6
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:e9e2f950cda8153cff112e43872b98e4977d3cbdf59713b8de92defef6d34b6d
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:06f1150114d4c0bd236d2a5d4716c9c3e95a9733058297790389d6ba2a1bf264
        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/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/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:c2f39be75173b4cc57498c5845b14c464bf9af92b49716df9661c8135ac2cf7a
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c55aadf45397083bec4e42d6c0514ed79169a07fd3d9d75671904df2c0520e52
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:26050fb95978e90e8d00e895032045e77cb236008a0e1417459e1aeca8a48c69
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f1371d2012796e9aaca105112190ff89ec3d0be95968e05b19db101480f67975
        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/openshift-gitops-1/argocd-rhel8@sha256:f77594bc053be144b33ff9603ee9675c7e82946ec0dbfb04d8f942c8d73155da
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8cc59901689858e06f5c2942f8c975449c17454fa8364da6153d9b5a3538a985
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:16d9184345e6d5a19f326a7b52f76d8a59b96763f233c50546ff017a625e5ff5
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0d13c03048b4435d9f5045a6fb7bd4b8808461b26aeca60c0047fa5937e1d45d
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:8aa68fddef88921aeeede24a849d3dabbceff01dc03185342c21e6ee58033eaf
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b2d58f4dc20eb7e17e09af0e8c5de55fa04f9f4f697e10c6be81a7a6a08381b2
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        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/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:3873d1f18b5643e1de2601419410270342650a21428bb26a4cbee20c0c63f98b
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:86012145d4b8798dc12f6f4f07a9316a193188aaac865e324b63f4e60e8ec584
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:43bb961d847477902e66a92edd1539322cac8d5f74706b048a458ad037a0c7a3
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a568c8c647e2e2d6abdf12138eeef8f8bdde1fdcbf786e9ca8c8f93bc79acaf9
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - 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/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:136d3a936759e112d3ea2e78f7c02bd882b0fd3011f4c452f45c32c43822772d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:80f92842fe4cba008a873ad2ab6059a3a24e76e16671d8ece034dbbe666996bc
        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/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - 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/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - 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/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - 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: 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-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: 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-controller-rhel8@sha256:73db97d20ee9415e9a8941cc6a36ed81d901d760d9949e95e10c90866ef8bf64
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:59ff4966f4f653e49d42d97bfed6351d3730128db74f666ee4ecacff11790baf
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9f9f8f69ab98c1f25cc301572339e0cc5c5b76f2e29ed26e10ac91ad20e0090c
        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-controller-rhel8@sha256:2e0b9332a44d8d9c23e19c7accab0813a651f39210257820db508cac28876595
        - 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
        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/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
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a2324acaea757bae3b01b1aec59f49f4dd79bd1868e69d3418d57c210a6dfd9
        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-rhel9@sha256:9d305bfa5f20dcdec7dd826670814ec8a92c7c177b00b9bddaae4c8a1cb31403
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ingress-node-firewall-operator-bundle@sha256:82df35fea3406d71cb5f49f06098ea2946cd3efb4685b662eee0f60d27ecf33c
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        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-router-rhel9@sha256:be9dbcd2a3a1e1e536921390dcfd283fc45dc4423d2705376ef37a9fb53f7cf1
        - 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
        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/service-interconnect/skupper-service-controller-rhel9@sha256:61542c5f0989f51ac5d6c96f5d0e29aca75614b79e7626299c77c5a74636b564
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
        - 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
        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-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
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        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-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
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        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/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
        - 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
        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/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
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        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
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/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
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "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
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/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
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "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
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: 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.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "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
kind: List
metadata:
  resourceVersion: ""
apiVersion: v1
items:
- 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
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "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
kind: List
metadata:
  resourceVersion: ""
apiVersion: v1
items:
- 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