apiVersion: operators.coreos.com/v1alpha1
kind: ClusterServiceVersion
metadata:
  annotations:
    alm-examples: '[]'
    certified: "false"
    categories: "Integration & Delivery, Networking, Streaming & Messaging"
    description: Skupper Operator provides the ability to create a service network
    containerImage: quay.io/skupper/skupper-operator-bundle:v0.7.0
    createdAt: 2021-04-14T08:00:00Z
    capabilities: Seamless Upgrades
    repository: https://github.com/skupperproject/skupper-operator
    support: Skupper Project

    operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
    operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
  labels:
    operatorframework.io/os.linux: supported
    operatorframework.io/arch.amd64: supported
  name: skupper-operator.v0.7.0
  namespace: placeholder
spec:
  replaces: skupper-operator.v0.6.0
  apiservicedefinitions: {}
  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
  icon:
  - base64data: [encoded data, 10008 characters]
    mediatype: image/svg+xml
  install:
    spec:
      clusterPermissions:
      - rules:
        - apiGroups:
          - apps
          resources:
          - deployments
          - statefulsets
          - daemonsets
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - route.openshift.io
          resources:
          - routes
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - ""
          resources:
          - pods
          - pods/exec
          - secrets
          - configmaps
          - serviceaccounts
          - services
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - rbac.authorization.k8s.io
          resources:
          - rolebindings
          - roles
          verbs:
          - get
          - list
          - watch
          - create
          - delete
        - apiGroups:
          - networking.k8s.io
          resources:
          - ingresses
          verbs:
          - get
          - list
          - watch
          - create
          - delete
        serviceAccountName: skupper-site-controller
      permissions:
      - rules:
        - apiGroups:
          - apps
          resources:
          - deployments
          - statefulsets
          - daemonsets
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - route.openshift.io
          resources:
          - routes
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - ""
          resources:
          - pods
          - pods/exec
          - secrets
          - configmaps
          - serviceaccounts
          - services
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - rbac.authorization.k8s.io
          resources:
          - rolebindings
          - roles
          verbs:
          - get
          - list
          - watch
          - create
          - delete
        - apiGroups:
          - networking.k8s.io
          resources:
          - ingresses
          verbs:
          - get
          - list
          - watch
          - create
          - delete
        serviceAccountName: skupper-site-controller
      deployments:
      - name: skupper-site-controller
        spec:
          replicas: 1
          selector:
            matchLabels:
              control-plane: controller-manager
          strategy: {}
          template:
            metadata:
              labels:
                control-plane: controller-manager
            spec:
              containers:
              - command:
                - /app/site-controller
                image: quay.io/skupper/site-controller@sha256:7ee275cc2abe93bd5c00d4c64998da3c5a369cf27507dc00ef44552b97c68989
                name: manager
                securityContext:
                  allowPrivilegeEscalation: false
                env:
                - name: WATCH_NAMESPACE
                  valueFrom:
                    fieldRef:
                      fieldPath: metadata.annotations['olm.targetNamespaces']
                - name: QDROUTERD_IMAGE
                  value: quay.io/interconnectedcloud/qdrouterd@sha256:6a7842f6a050e644c7f038913768a27b8fa32b5be4bb40ee23202171176b6326
                - name: SKUPPER_SERVICE_CONTROLLER_IMAGE
                  value: quay.io/skupper/service-controller@sha256:75efacda35efabde848a450d927609caedf69db5b4c78121f0b9439695f67712
              securityContext:
                runAsNonRoot: false
              serviceAccountName: skupper-site-controller
              terminationGracePeriodSeconds: 10
    strategy: deployment
  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
  version: 0.7.0
