diff --git a/Makefile b/Makefile index ca8dcc97..e3fc86f7 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ SHELL=/bin/bash # Identifies the current build. -VERSION ?= v0.2.0-SNAPSHOT +VERSION ?= v0.2.0 COMMIT_HASH ?= $(shell git rev-parse HEAD) # Directories based on the root project directory diff --git a/operator/manifests/ossmconsole-community/0.2.0/bundle.Dockerfile b/operator/manifests/ossmconsole-community/0.2.0/bundle.Dockerfile new file mode 100644 index 00000000..e5bb2728 --- /dev/null +++ b/operator/manifests/ossmconsole-community/0.2.0/bundle.Dockerfile @@ -0,0 +1,13 @@ +FROM scratch + +LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1 +LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/ +LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/ +LABEL operators.operatorframework.io.bundle.package.v1=ossmconsole +LABEL operators.operatorframework.io.bundle.channels.v1=candidate +LABEL operators.operatorframework.io.bundle.channel.default.v1=candidate + +LABEL com.redhat.openshift.versions=v4.10 + +COPY manifests /manifests/ +COPY metadata /metadata/ diff --git a/operator/manifests/ossmconsole-community/0.2.0/manifests/ossmconsole.clusterserviceversion.yaml b/operator/manifests/ossmconsole-community/0.2.0/manifests/ossmconsole.clusterserviceversion.yaml new file mode 100644 index 00000000..821e9016 --- /dev/null +++ b/operator/manifests/ossmconsole-community/0.2.0/manifests/ossmconsole.clusterserviceversion.yaml @@ -0,0 +1,286 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + name: ossmconsole-operator.v0.2.0 + namespace: placeholder + labels: + operatorframework.io/arch.amd64: supported + operatorframework.io/arch.s390x: supported + operatorframework.io/arch.ppc64le: supported + annotations: + olm.skipRange: '>=0.1.0 <0.2.0' + categories: Monitoring,Logging & Tracing + certified: "false" + containerImage: quay.io/kiali/ossmconsole-operator:v0.2.0 + capabilities: Basic Install + support: Kiali + description: "Adds Kiali observability, configuration and validation into the OpenShift Console" + repository: https://github.com/kiali/openshift-servicemesh-plugin + createdAt: 2022-09-27T14:03:53Z + alm-examples: |- + [ + { + "apiVersion": "kiali.io/v1alpha1", + "kind": "OSSMConsole", + "metadata": { + "name": "ossmconsole" + }, + "spec": { + "kiali": { + "serviceName": "", + "serviceNamespace": "", + "servicePort": 0, + "url": "" + } + } + } + ] +spec: + version: 0.2.0 + maturity: alpha + replaces: ossmconsole-operator.v0.1.0 + displayName: OpenShift Service Mesh Console + description: |- + ## About the managed application + + The Kiali OpenShift Service Mesh Console adds Kiali observability, configuration and validation into the OpenShift Console. + + Before creating an OSSMConsole CR to install the plugin, make sure OpenShift Service Mesh + is installed along with the Kiali UI. + icon: + - base64data: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIyLjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxMjgwIDEyODAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDEyODAgMTI4MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiMwMTMxNDQ7fQoJLnN0MXtmaWxsOiMwMDkzREQ7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04MTAuOSwxODAuOWMtMjUzLjYsMC00NTkuMSwyMDUuNS00NTkuMSw0NTkuMXMyMDUuNSw0NTkuMSw0NTkuMSw0NTkuMVMxMjcwLDg5My42LDEyNzAsNjQwCgkJUzEwNjQuNSwxODAuOSw4MTAuOSwxODAuOXogTTgxMC45LDEwMjkuMmMtMjE1LDAtMzg5LjItMTc0LjMtMzg5LjItMzg5LjJjMC0yMTUsMTc0LjMtMzg5LjIsMzg5LjItMzg5LjJTMTIwMC4xLDQyNSwxMjAwLjEsNjQwCgkJUzEwMjUuOSwxMDI5LjIsODEwLjksMTAyOS4yeiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTY1My4zLDI4NGMtMTM2LjQsNjAuNS0yMzEuNiwxOTcuMS0yMzEuNiwzNTZjMCwxNTguOCw5NS4yLDI5NS41LDIzMS42LDM1NmM5OC40LTg3LjEsMTYwLjQtMjE0LjMsMTYwLjQtMzU2CgkJQzgxMy43LDQ5OC4zLDc1MS42LDM3MS4xLDY1My4zLDI4NHoiLz4KCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0zNTEuOCw2NDBjMC0xMDkuOCwzOC42LTIxMC41LDEwMi44LTI4OS41Yy0zOS42LTE4LjItODMuNi0yOC4zLTEzMC0yOC4zQzE1MC45LDMyMi4yLDEwLDQ2NC41LDEwLDY0MAoJCXMxNDAuOSwzMTcuOCwzMTQuNiwzMTcuOGM0Ni4zLDAsOTAuNC0xMC4xLDEzMC0yOC4zQzM5MC4zLDg1MC41LDM1MS44LDc0OS44LDM1MS44LDY0MHoiLz4KPC9nPgo8L3N2Zz4K + mediatype: image/svg+xml + keywords: ['service-mesh', 'observability', 'monitoring', 'maistra', 'istio', 'kiali', 'ossm'] + maintainers: + - name: Kiali Developers Google Group + email: kiali-dev@googlegroups.com + provider: + name: Kiali + labels: + name: ossmconsole-operator + selector: + matchLabels: + name: ossmconsole-operator + links: + - name: OpenShift Service Mesh Console Project Source Code + url: https://github.com/kiali/openshift-servicemesh-plugin + - name: Kiali Documentation + url: https://kiali.io + installModes: + - type: OwnNamespace + supported: false + - type: SingleNamespace + supported: false + - type: MultiNamespace + supported: false + - type: AllNamespaces + supported: true + customresourcedefinitions: + owned: + - name: ossmconsoles.kiali.io + group: kiali.io + description: A configuration file for a OpenShift Service Mesh Console installation. + displayName: OpenShift Service Mesh Console + kind: OSSMConsole + version: v1alpha1 + resources: + - kind: Deployment + version: apps/v1 + - kind: Pod + version: v1 + - kind: ConfigMap + version: v1 + specDescriptors: + - displayName: Kiali Service Name + description: "The internal Kiali service that the OS Console will use to proxy API calls. If empty, an attempt will be made to auto-discover it from the Kiali OpenShift Route." + path: kiali.serviceName + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:text' + - displayName: Kiali Service Namespace + description: "The namespace where the Kiali service is deployed. If empty, an attempt will be made to auto-discover it from the Kiali OpenShift Route. It will assume that the OpenShift Route and the Kiali service are deployed in the same namespace." + path: kiali.serviceNamespace + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:text' + - displayName: Kiali Service Port + description: "The internal port used by the Kiali service for the API. If empty, an attempt will be made to auto-discover it from the Kiali OpenShift Route." + path: kiali.servicePort + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:text' + - displayName: Kiali URL + description: "The root endpoint URL to the Kiali UI Console. If empty, an attempt to auto-discover it will be made." + path: kiali.url + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:text' + apiservicedefinitions: {} + install: + strategy: deployment + spec: + deployments: + - name: ossmconsole-operator + spec: + replicas: 1 + selector: + matchLabels: + app: ossmconsole-operator + template: + metadata: + name: ossmconsole-operator + labels: + app: ossmconsole-operator + # required for the operator SDK metric service selector + name: ossmconsole-operator + version: v0.2.0 + app.kubernetes.io/name: ossmconsole-operator + app.kubernetes.io/instance: ossmconsole-operator + app.kubernetes.io/version: v0.2.0 + app.kubernetes.io/part-of: ossmconsole-operator + annotations: + prometheus.io/scrape: "true" + spec: + serviceAccountName: ossmconsole-operator + containers: + - name: operator + image: quay.io/kiali/ossmconsole-operator:v0.2.0 + imagePullPolicy: IfNotPresent + args: + - "--zap-log-level=info" + - "--leader-election-id=ossmconsole-operator" + securityContext: + allowPrivilegeEscalation: false + privileged: false + runAsNonRoot: true + capabilities: + drop: + - ALL + volumeMounts: + - mountPath: /tmp/ansible-operator/runner + name: runner + env: + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.annotations['olm.targetNamespaces'] + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: ALLOW_AD_HOC_OSSMCONSOLE_IMAGE + value: "false" + - name: PROFILE_TASKS_TASK_OUTPUT_LIMIT + value: "100" + - name: ANSIBLE_DEBUG_LOGS + value: "True" + - name: ANSIBLE_VERBOSITY_OSSMCONSOLE_KIALI_IO + value: "1" + - name: ANSIBLE_CONFIG + value: "/etc/ansible/ansible.cfg" + ports: + - name: http-metrics + containerPort: 8080 + resources: + requests: + cpu: "10m" + memory: "64Mi" + volumes: + - name: runner + emptyDir: {} + clusterPermissions: + - rules: + - apiGroups: [""] + resources: + - pods + verbs: + - get + - list + - watch + - apiGroups: [""] + resources: + - configmaps + - services + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: ["apps"] + resources: + - deployments + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: ["console.openshift.io"] + resources: + - consoleplugins + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: ["operator.openshift.io"] + resources: + - consoles + verbs: + - get + - list + - patch + - update + - watch + - apiGroups: ["monitoring.coreos.com"] + resources: + - servicemonitors + verbs: + - create + - get + - apiGroups: ["apps"] + resourceNames: + - ossmconsole-operator + resources: + - deployments/finalizers + verbs: + - update + - apiGroups: ["kiali.io"] + resources: + - '*' + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: ["config.openshift.io"] + resources: + - clusteroperators + verbs: + - list + - watch + - apiGroups: ["config.openshift.io"] + resourceNames: + - kube-apiserver + resources: + - clusteroperators + verbs: + - get + - apiGroups: ["route.openshift.io"] + resources: + - routes + verbs: + - get + - list + serviceAccountName: ossmconsole-operator diff --git a/operator/manifests/ossmconsole-community/0.2.0/manifests/ossmconsole.crd.yaml b/operator/manifests/ossmconsole-community/0.2.0/manifests/ossmconsole.crd.yaml new file mode 100644 index 00000000..5da153ce --- /dev/null +++ b/operator/manifests/ossmconsole-community/0.2.0/manifests/ossmconsole.crd.yaml @@ -0,0 +1,25 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: ossmconsoles.kiali.io + labels: + app: ossmconsole-operator + app.kubernetes.io/name: ossmconsole-operator +spec: + group: kiali.io + names: + kind: OSSMConsole + listKind: OSSMConsoleList + plural: ossmconsoles + singular: ossmconsole + scope: Namespaced + versions: + - name: v1alpha1 + served: true + storage: true + subresources: + status: {} + schema: + openAPIV3Schema: + type: object + x-kubernetes-preserve-unknown-fields: true diff --git a/operator/manifests/ossmconsole-community/0.2.0/metadata/annotations.yaml b/operator/manifests/ossmconsole-community/0.2.0/metadata/annotations.yaml new file mode 100644 index 00000000..3359b986 --- /dev/null +++ b/operator/manifests/ossmconsole-community/0.2.0/metadata/annotations.yaml @@ -0,0 +1,8 @@ +annotations: + operators.operatorframework.io.bundle.channel.default.v1: candidate + operators.operatorframework.io.bundle.channels.v1: candidate + 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: ossmconsole + com.redhat.openshift.versions: v4.10