From c8d2fa58017ddc6df7522b81f2861a2b0475909d Mon Sep 17 00:00:00 2001 From: robszumski Date: Thu, 30 Aug 2018 17:11:42 -0700 Subject: [PATCH 01/19] rh-operators: add AMQ Streams CSV + CRDs --- .../rh-operators/amq-streams-kafka.crd.yaml | 1248 +++++++++++++++++ .../amq-streams-kafkaconnect.crd.yaml | 327 +++++ .../amq-streams-kafkaconnects2i.crd.yaml | 329 +++++ .../amq-streams-kafkatopic.crd.yaml | 35 + .../amq-streams-kafkauser.cfrd.yaml | 79 ++ .../rh-operators/amq-streams.package.yaml | 5 + ...-streams.v1.0.0-clusterserviceversion.yaml | 435 ++++++ 7 files changed, 2458 insertions(+) create mode 100644 deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml create mode 100644 deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml create mode 100644 deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml create mode 100644 deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml create mode 100644 deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.cfrd.yaml create mode 100644 deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml create mode 100644 deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion.yaml diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml new file mode 100644 index 0000000000..7d7bfc97ed --- /dev/null +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml @@ -0,0 +1,1248 @@ +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: kafkas.kafka.strimzi.io + labels: + app: strimzi +spec: + group: kafka.strimzi.io + version: v1alpha1 + scope: Namespaced + names: + kind: Kafka + listKind: KafkaList + singular: kafka + plural: kafkas + validation: + openAPIV3Schema: + properties: + spec: + type: object + properties: + kafka: + type: object + properties: + replicas: + type: integer + minimum: 1 + image: + type: string + storage: + type: object + properties: + class: + type: string + deleteClaim: + type: boolean + selector: + type: object + size: + type: string + type: + type: string + listeners: + type: object + properties: + plain: + type: object + properties: {} + tls: + type: object + properties: + authentication: + type: object + properties: + type: + type: string + authorization: + type: object + properties: + superUsers: + type: array + items: + type: string + type: + type: string + config: + type: object + rack: + type: object + properties: + topologyKey: + type: string + example: failure-domain.beta.kubernetes.io/zone + required: + - topologyKey + brokerRackInitImage: + type: string + affinity: + type: object + properties: + nodeAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + preference: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: object + properties: + nodeSelectorTerms: + type: array + items: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + podAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + podAntiAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + tolerations: + type: array + items: + type: object + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + type: integer + value: + type: string + livenessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + readinessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + jvmOptions: + type: object + properties: + -XX: + type: object + -Xms: + type: string + pattern: '[0-9]+[mMgG]?' + -Xmx: + type: string + pattern: '[0-9]+[mMgG]?' + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + metrics: + type: object + logging: + type: object + properties: + loggers: + type: object + name: + type: string + type: + type: string + tlsSidecar: + type: object + properties: + image: + type: string + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + required: + - replicas + - storage + - listeners + zookeeper: + type: object + properties: + replicas: + type: integer + minimum: 1 + image: + type: string + storage: + type: object + properties: + class: + type: string + deleteClaim: + type: boolean + selector: + type: object + size: + type: string + type: + type: string + config: + type: object + affinity: + type: object + properties: + nodeAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + preference: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: object + properties: + nodeSelectorTerms: + type: array + items: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + podAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + podAntiAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + tolerations: + type: array + items: + type: object + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + type: integer + value: + type: string + livenessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + readinessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + jvmOptions: + type: object + properties: + -XX: + type: object + -Xms: + type: string + pattern: '[0-9]+[mMgG]?' + -Xmx: + type: string + pattern: '[0-9]+[mMgG]?' + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + metrics: + type: object + logging: + type: object + properties: + loggers: + type: object + name: + type: string + type: + type: string + tlsSidecar: + type: object + properties: + image: + type: string + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + required: + - replicas + - storage + topicOperator: + type: object + properties: + watchedNamespace: + type: string + image: + type: string + reconciliationIntervalSeconds: + type: integer + minimum: 0 + zookeeperSessionTimeoutSeconds: + type: integer + minimum: 0 + affinity: + type: object + properties: + nodeAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + preference: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: object + properties: + nodeSelectorTerms: + type: array + items: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + podAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + podAntiAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + topicMetadataMaxAttempts: + type: integer + minimum: 0 + tlsSidecar: + type: object + properties: + image: + type: string + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + logging: + type: object + properties: + loggers: + type: object + name: + type: string + type: + type: string + entityOperator: + type: object + properties: + topicOperator: + type: object + properties: + watchedNamespace: + type: string + image: + type: string + reconciliationIntervalSeconds: + type: integer + minimum: 0 + zookeeperSessionTimeoutSeconds: + type: integer + minimum: 0 + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + topicMetadataMaxAttempts: + type: integer + minimum: 0 + logging: + type: object + properties: + loggers: + type: object + name: + type: string + type: + type: string + userOperator: + type: object + properties: + watchedNamespace: + type: string + image: + type: string + reconciliationIntervalSeconds: + type: integer + minimum: 0 + zookeeperSessionTimeoutSeconds: + type: integer + minimum: 0 + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + logging: + type: object + properties: + loggers: + type: object + name: + type: string + type: + type: string + affinity: + type: object + properties: + nodeAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + preference: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: object + properties: + nodeSelectorTerms: + type: array + items: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + podAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + podAntiAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + tolerations: + type: array + items: + type: object + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + type: integer + value: + type: string + tlsSidecar: + type: object + properties: + image: + type: string + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + required: + - kafka + - zookeeper diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml new file mode 100644 index 0000000000..f883b8808f --- /dev/null +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml @@ -0,0 +1,327 @@ +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: kafkaconnects.kafka.strimzi.io + labels: + app: strimzi +spec: + group: kafka.strimzi.io + version: v1alpha1 + scope: Namespaced + names: + kind: KafkaConnect + listKind: KafkaConnectList + singular: kafkaconnect + plural: kafkaconnects + validation: + openAPIV3Schema: + properties: + spec: + type: object + properties: + replicas: + type: integer + image: + type: string + livenessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + readinessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + jvmOptions: + type: object + properties: + -XX: + type: object + -Xms: + type: string + pattern: '[0-9]+[mMgG]?' + -Xmx: + type: string + pattern: '[0-9]+[mMgG]?' + affinity: + type: object + properties: + nodeAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + preference: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: object + properties: + nodeSelectorTerms: + type: array + items: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + podAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + podAntiAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + tolerations: + type: array + items: + type: object + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + type: integer + value: + type: string + logging: + type: object + properties: + loggers: + type: object + name: + type: string + type: + type: string + metrics: + type: object + authentication: + type: object + properties: + certificateAndKey: + type: object + properties: + certificate: + type: string + key: + type: string + secretName: + type: string + required: + - certificate + - key + - secretName + type: + type: string + required: + - certificateAndKey + bootstrapServers: + type: string + config: + type: object + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + tls: + type: object + properties: + trustedCertificates: + type: array + items: + type: object + properties: + certificate: + type: string + secretName: + type: string + required: + - certificate + - secretName + required: + - trustedCertificates + required: + - bootstrapServers diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml new file mode 100644 index 0000000000..d321282965 --- /dev/null +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml @@ -0,0 +1,329 @@ +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: kafkaconnects2is.kafka.strimzi.io + labels: + app: strimzi +spec: + group: kafka.strimzi.io + version: v1alpha1 + scope: Namespaced + names: + kind: KafkaConnectS2I + listKind: KafkaConnectS2IList + singular: kafkaconnects2i + plural: kafkaconnects2is + validation: + openAPIV3Schema: + properties: + spec: + type: object + properties: + replicas: + type: integer + image: + type: string + livenessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + readinessProbe: + type: object + properties: + initialDelaySeconds: + type: integer + minimum: 0 + timeoutSeconds: + type: integer + minimum: 0 + jvmOptions: + type: object + properties: + -XX: + type: object + -Xms: + type: string + pattern: '[0-9]+[mMgG]?' + -Xmx: + type: string + pattern: '[0-9]+[mMgG]?' + affinity: + type: object + properties: + nodeAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + preference: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: object + properties: + nodeSelectorTerms: + type: array + items: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + podAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + podAntiAffinity: + type: object + properties: + preferredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + podAffinityTerm: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + weight: + type: integer + requiredDuringSchedulingIgnoredDuringExecution: + type: array + items: + type: object + properties: + labelSelector: + type: object + properties: + matchExpressions: + type: array + items: + type: object + properties: + key: + type: string + operator: + type: string + values: + type: array + items: + type: string + matchLabels: + type: object + namespaces: + type: array + items: + type: string + topologyKey: + type: string + metrics: + type: object + authentication: + type: object + properties: + certificateAndKey: + type: object + properties: + certificate: + type: string + key: + type: string + secretName: + type: string + required: + - certificate + - key + - secretName + type: + type: string + required: + - certificateAndKey + bootstrapServers: + type: string + config: + type: object + insecureSourceRepository: + type: boolean + logging: + type: object + properties: + loggers: + type: object + name: + type: string + type: + type: string + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + requests: + type: object + properties: + cpu: + type: string + pattern: '[0-9]+m?$' + memory: + type: string + pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$' + tls: + type: object + properties: + trustedCertificates: + type: array + items: + type: object + properties: + certificate: + type: string + secretName: + type: string + required: + - certificate + - secretName + required: + - trustedCertificates + tolerations: + type: array + items: + type: object + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + type: integer + value: + type: string + required: + - bootstrapServers diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml new file mode 100644 index 0000000000..db4038fa6a --- /dev/null +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml @@ -0,0 +1,35 @@ +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: kafkatopics.kafka.strimzi.io + labels: + app: strimzi +spec: + group: kafka.strimzi.io + version: v1alpha1 + scope: Namespaced + names: + kind: KafkaTopic + listKind: KafkaTopicList + singular: kafkatopic + plural: kafkatopics + shortNames: + - kt + validation: + openAPIV3Schema: + properties: + spec: + type: object + properties: + partitions: + type: integer + minimum: 1 + replicas: + type: integer + minimum: 1 + maximum: 32767 + config: + type: object + topicName: + type: string \ No newline at end of file diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.cfrd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.cfrd.yaml new file mode 100644 index 0000000000..5adbf195fd --- /dev/null +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.cfrd.yaml @@ -0,0 +1,79 @@ +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: kafkausers.kafka.strimzi.io + labels: + app: strimzi +spec: + group: kafka.strimzi.io + version: v1alpha1 + scope: Namespaced + names: + kind: KafkaUser + listKind: KafkaUserList + singular: kafkauser + plural: kafkausers + shortNames: + - ku + validation: + openAPIV3Schema: + properties: + spec: + type: object + properties: + authentication: + type: object + properties: + type: + type: string + authorization: + type: object + properties: + acls: + type: array + items: + type: object + properties: + host: + type: string + operation: + type: string + enum: + - Read + - Write + - Create + - Delete + - Alter + - Describe + - ClusterAction + - AlterConfigs + - DescribeConfigs + - IdempotentWrite + - All + resource: + type: object + properties: + name: + type: string + patternType: + type: string + enum: + - literal + - prefix + type: + type: string + type: + type: string + enum: + - allow + - deny + required: + - operation + - resource + type: + type: string + required: + - acls + required: + - authentication \ No newline at end of file diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml new file mode 100644 index 0000000000..6aec3e67c3 --- /dev/null +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml @@ -0,0 +1,5 @@ +#! package-manifest: ./deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion +packageName: amq-streams +channels: +- name: stable + currentCSV: amq-streams.v1.0.0 diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion.yaml new file mode 100644 index 0000000000..dba52722a3 --- /dev/null +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion.yaml @@ -0,0 +1,435 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + name: amqstreams.v1.0.0.beta + namespace: placeholder + annotations: + alm-examples: '[{"apiVersion":"kafka.strimzi.io/v1alpha1","kind":"Kafka","metadata":{"name":"my-cluster"},"spec":{"kafka":{"replicas":3,"listeners":{"plain":{},"tls":{}},"config":{"offsets.topic.replication.factor":3,"transaction.state.log.replication.factor":3,"transaction.state.log.min.isr":2},"storage":{"type":"ephemeral"}},"zookeeper":{"replicas":3,"storage":{"type":"ephemeral"}},"entityOperator":{"topicOperator":{},"userOperator":{}}}}, {"apiVersion":"kafka.strimzi.io/v1alpha1","kind":"KafkaConnect","metadata":{"name":"my-connect-cluster"},"spec":{"replicas":1,"bootstrapServers":"my-cluster-kafka-bootstrap:9093","tls":{"trustedCertificates":[{"secretName":"my-cluster-cluster-ca-cert","certificate":"ca.crt"}]}}}, {"apiVersion":"kafka.strimzi.io/v1alpha1","kind":"KafkaConnectS2I","metadata":{"name":"my-connect-cluster"},"spec":{"replicas":1,"bootstrapServers":"my-cluster-kafka-bootstrap:9093","tls":{"trustedCertificates":[{"secretName":"my-cluster-cluster-ca-cert","certificate":"ca.crt"}]}}}, {"apiVersion":"kafka.strimzi.io/v1alpha1","kind":"KafkaTopic","metadata":{"name":"my-topic","labels":{"strimzi.io/cluster":"my-cluster"}},"spec":{"partitions":10,"replicas":3,"config":{"retention.ms":604800000,"segment.bytes":1073741824}}}, {"apiVersion":"kafka.strimzi.io/v1alpha1","kind":"KafkaUser","metadata":{"name":"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":"*"}]}}}]' +spec: + displayName: AMQ Streams + 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 + + # Before you start + + 1\. Create AMQ Streams Cluster Roles + ``` + $ oc apply -f http://amq.io/amqstreams/rbac.yaml + ``` + 2\. Create following bindings + ``` + $ oc adm policy add-cluster-role-to-user strimzi-cluster-operator -z strimzi-cluster-operator --namespace + $ oc adm policy add-cluster-role-to-user strimzi-kafka-broker -z strimzi-cluster-operator --namespace + ``` + keywords: ['amq', 'streams', 'messaging', 'kafka', 'streaming'] + version: 1.0.0-Beta + maturity: beta + maintainers: + - name: Red Hat, Inc. + email: customerservice@redhat.com + provider: + name: Red Hat, Inc. + links: + - name: Product Page + url: https://access.redhat.com/products/red-hat-amq-streams + - name: Documentation + url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams/1.0-beta/html-single/using_amq_streams/ + icon: + - base64data: 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 + mediatype: image/png + install: + strategy: deployment + spec: + permissions: + - serviceAccountName: strimzi-cluster-operator + rules: + - apiGroups: + - "" + resources: + - serviceaccounts + verbs: + - get + - create + - delete + - patch + - update + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterrolebindings + - rolebindings + verbs: + - get + - create + - delete + - patch + - update + - apiGroups: + - "" + resources: + - configmaps + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - kafka.strimzi.io + resources: + - kafkas + - kafkaconnects + - kafkaconnects2is + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - "" + resources: + - pods + verbs: + - get + - list + - watch + - delete + - apiGroups: + - "" + resources: + - services + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - "" + resources: + - endpoints + verbs: + - get + - list + - watch + - apiGroups: + - extensions + resources: + - deployments + - deployments/scale + - replicasets + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - apps + resources: + - deployments + - deployments/scale + - deployments/status + - statefulsets + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - "" + resources: + - events + verbs: + - create + - apiGroups: + - extensions + resources: + - replicationcontrollers + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - apps.openshift.io + resources: + - deploymentconfigs + - deploymentconfigs/scale + - deploymentconfigs/status + - deploymentconfigs/finalizers + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - build.openshift.io + resources: + - buildconfigs + - builds + verbs: + - create + - delete + - get + - list + - patch + - watch + - update + - apiGroups: + - image.openshift.io + resources: + - imagestreams + - imagestreams/status + verbs: + - create + - delete + - get + - list + - watch + - patch + - update + - apiGroups: + - "" + resources: + - replicationcontrollers + verbs: + - get + - list + - watch + - create + - delete + - patch + - update + - apiGroups: + - "" + resources: + - secrets + verbs: + - get + - list + - create + - delete + - patch + - update + - apiGroups: + - "" + resources: + - nodes + verbs: + - get + - apiGroups: + - kafka.strimzi.io + resources: + - kafkatopics + verbs: + - get + - list + - watch + - create + - patch + - update + - delete + - apiGroups: + - "" + resources: + - events + verbs: + - create + - apiGroups: + - kafka.strimzi.io + resources: + - kafkausers + verbs: + - get + - list + - watch + - create + - patch + - update + - delete + deployments: + - name: strimzi-cluster-operator + spec: + replicas: 1 + selector: + matchLabels: + name: strimzi-cluster-operator-alm-owned + template: + metadata: + name: strimzi-cluster-operator-alm-owned + labels: + name: strimzi-cluster-operator-alm-owned + spec: + serviceAccountName: strimzi-cluster-operator + containers: + - name: cluster-operator + image: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-clusteroperator-openshift:1.0.0-beta + env: + - name: STRIMZI_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: STRIMZI_FULL_RECONCILIATION_INTERVAL_MS + value: "120000" + - name: STRIMZI_OPERATION_TIMEOUT_MS + value: "300000" + - name: STRIMZI_DEFAULT_ZOOKEEPER_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-zookeeper-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_KAFKA_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-kafka-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_KAFKA_CONNECT_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-kafkaconnect-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_KAFKA_CONNECT_S2I_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-kafkaconnects2i-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_TOPIC_OPERATOR_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-topicoperator-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_USER_OPERATOR_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-useroperator-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_KAFKA_INIT_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-kafkainit-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_TLS_SIDECAR_ZOOKEEPER_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-zookeeperstunnel-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_TLS_SIDECAR_KAFKA_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-kafkastunnel-openshift:1.0.0-beta + - name: STRIMZI_DEFAULT_TLS_SIDECAR_ENTITY_OPERATOR_IMAGE + value: registry.access.redhat.com/amqstreams-1-tech-preview/amqstreams10-entityoperatorstunnel-openshift:1.0.0-beta + - name: STRIMZI_LOG_LEVEL + value: INFO + customresourcedefinitions: + owned: + - name: kafkas.kafka.strimzi.io + version: v1alpha1 + kind: Kafka + displayName: Kafka + description: Represents a Kafka cluster + specDescriptors: + - description: The desired number of Kafka brokers. + displayName: Kafka Brokers + path: kafka.replicas + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: The type of storage used by Kafka brokers + displayName: Kafka storage + path: kafka.storage.type + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: Limits describes the minimum/maximum amount of compute resources required/allowed + displayName: Kafka Resource Requirements + path: kafka.resources + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:resourceRequirements' + - description: The desired number of Zookeeper nodes. + displayName: Zookeeper Nodes + path: zookeeper.replicas + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: The type of storage used by Zookeeper nodes + displayName: Zookeeper storage + path: zookeeper.storage.type + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: Limits describes the minimum/maximum amount of compute resources required/allowed + displayName: Zookeeper Resource Requirements + path: zookeeper.resources + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:resourceRequirements' + - name: kafkaconnects.kafka.strimzi.io + version: v1alpha1 + kind: KafkaConnect + displayName: Kafka Connect + description: Represents a Kafka Connect cluster + specDescriptors: + - description: The desired number of Kafka Connect nodes. + displayName: Connect nodes + path: replicas + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:podCount' + - description: The address of the bootstrap server + displayName: Bootstrap server + path: bootstrapServers + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: Limits describes the minimum/maximum amount of compute resources required/allowed + displayName: Resource Requirements + path: resources + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:resourceRequirements' + - name: kafkaconnects2is.kafka.strimzi.io + version: v1alpha1 + kind: KafkaConnectS2I + displayName: Kafka Connect S2I + description: Represents a Kafka Connect cluster with Source 2 Image support + specDescriptors: + - description: The desired number of Kafka Connect nodes. + displayName: Connect nodes + path: replicas + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:podCount' + - description: The address of the bootstrap server + displayName: Bootstrap server + path: bootstrapServers + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: Limits describes the minimum/maximum amount of compute resources required/allowed + displayName: Resource Requirements + path: resources + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:resourceRequirements' + - name: kafkatopics.kafka.strimzi.io + version: v1alpha1 + kind: KafkaTopic + displayName: Kafka Topic + description: Represents a topic inside a Kafka cluster + specDescriptors: + - description: The number of partitions + displayName: Partitions + path: partitions + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: The number of replicas + displayName: Replication factor + path: replicas + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - name: kafkausers.kafka.strimzi.io + version: v1alpha1 + kind: KafkaUser + displayName: Kafka User + description: Represents a user inside a Kafka cluster + specDescriptors: + - description: Authentication type + displayName: Authentication type + path: authentication.type + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: Authorization type + displayName: Authorization type + path: authorization.type + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' \ No newline at end of file From dace2f292f3b96f0f4a5f5294d137e4e3db625a3 Mon Sep 17 00:00:00 2001 From: robszumski Date: Thu, 30 Aug 2018 17:12:32 -0700 Subject: [PATCH 02/19] certified-operators: add MongoDB CSV + CRDs --- .../mongodb-enterprise.package.yaml | 5 + ...terprise.v0.3.2.clusterserviceversion.yaml | 270 ++++++++++++++++++ .../mongodb-replicasets.crd.yaml | 37 +++ .../mongodb-shardedclusters.crd.yaml | 50 ++++ .../mongodb-standalones.crd.yaml | 32 +++ 5 files changed, 394 insertions(+) create mode 100644 deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/mongodb-replicasets.crd.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/mongodb-shardedclusters.crd.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/mongodb-standalones.crd.yaml diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml new file mode 100644 index 0000000000..8a2bec72d2 --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml @@ -0,0 +1,5 @@ +#! package-manifest: ./deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion +packageName: mongodb-enterprise +channels: +- name: stable + currentCSV: mongodboperator.v0.3.2 diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml new file mode 100644 index 0000000000..56bcc1f66e --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml @@ -0,0 +1,270 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: >- + [{"apiVersion":"mongodb.com/v1","kind":"MongoDbStandalone","metadata":{"name":"my-standalone","namespace":"mongodb"},"spec":{"version":"4.0.2","persistent":false,"project":"my-project","credentials":"my-credentials"}},{"apiVersion":"mongodb.com/v1","kind":"MongoDbReplicaSet","metadata":{"name":"my-replica-set","namespace":"mongodb"},"spec":{"members":3,"version":"4.0.2","persistent":false,"project":"my-project","credentials":"my-credentials"}},{"apiVersion":"mongodb.com/v1","kind":"MongoDbShardedCluster","metadata":{"name":"my-sharded-cluster","namespace":"mongodb"},"spec":{"shardCount": 2, "mongodsPerShardCount": 3, "mongosCount": 2, "configServerCount": 3,"version":"4.0.2","persistent":false,"project":"my-project","credentials":"my-credentials"}}] + name: mongodboperator.v0.3.2 + namespace: placeholder +spec: + customresourcedefinitions: + owned: + - description: >- + MongoDB Deployment consisting of only one host. No replication of + data. + displayName: MongoDB Standalone + group: mongodb.com + kind: MongoDbStandalone + name: mongodbstandalones.mongodb.com + resources: + - kind: Service + name: '' + version: v1 + - kind: StatefulSet + name: '' + version: v1beta2 + - kind: Pod + name: '' + version: v1 + specDescriptors: + - description: Credentials for Ops Manager or Cloud Manager. + displayName: Credentials + path: credentials + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:core:v1:Secret' + - description: Project this deployment belongs to. + displayName: Project + path: project + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:core:v1:ConfigMap' + - description: MongoDB version to be installed. + displayName: Version + path: version + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + version: v1 + - description: MongoDB Replica Set Deployment + displayName: MongoDB Replica Set + group: mongodb.com + kind: MongoDbReplicaSet + name: mongodbreplicasets.mongodb.com + resources: + - kind: Service + name: '' + version: v1 + - kind: StatefulSet + name: '' + version: v1beta2 + - kind: Pod + name: '' + version: v1 + specDescriptors: + - description: Number of members in this Replica Set. + displayName: Members + path: members + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: Credentials for Ops Manager or Cloud Manager. + displayName: Credentials + path: credentials + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:core:v1:Secret' + - description: Project this deployment belongs to. + displayName: Project + path: project + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:core:v1:ConfigMap' + - description: MongoDB version to be installed. + displayName: Version + path: version + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + version: v1 + - description: MongoDB Sharded Cluster Deployment + displayName: MongoDB Sharded Cluster + group: mongodb.com + kind: MongoDbShardedCluster + name: mongodbshardedclusters.mongodb.com + resources: + - kind: Service + name: '' + version: v1 + - kind: StatefulSet + name: '' + version: v1beta2 + - kind: Pod + name: '' + version: v1 + specDescriptors: + - description: Credentials for Ops Manager or Cloud Manager. + displayName: Credentials + path: credentials + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:core:v1:Secret' + - description: Project this deployment belongs to. + displayName: Project + path: project + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:core:v1:ConfigMap' + - description: MongoDB version to be installed. + displayName: Version + path: version + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: How many Config Servers will be deployed + displayName: Config Server Count + path: configServerCount + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: How many MongoDB Servers per Shard will be deployed + displayName: MongoDB Servers per Shard + path: mongodsPerShardCount + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: How many mongos will be deployed + displayName: Mongos (MongoDB Shard) to be deployed + path: mongosCount + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + - description: Amount of Shards to be deployed + displayName: Shards + path: shardCount + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:label' + version: v1 + keywords: + - mongodb + - database + - nosql + displayName: MongoDB + provider: + name: 'MongoDB, Inc' + maturity: stable + version: 0.3.2 + icon: + - base64data: >- + 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 + mediatype: image/png + links: + - name: Documentation + url: >- + https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html + install: + spec: + deployments: + - name: mongodb-enterprise-operator + spec: + replicas: 1 + selector: + matchLabels: + k8s-app: mongodb-enterprise-operator + template: + metadata: + labels: + k8s-app: mongodb-enterprise-operator + spec: + containers: + - env: + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: OPERATOR_ENV + value: dev + - name: MONGODB_ENTERPRISE_DATABASE_IMAGE + value: >- + quay.io/mongodb/mongodb-enterprise-database:experimental + - name: IMAGE_PULL_POLICY + value: Always + - name: IMAGE_PULL_SECRETS + value: '' + image: 'registry.connect.redhat.com/mongodb/enterprise-operator:0.3.2' + imagePullPolicy: Always + name: mongodb-enterprise-operator + resources: + limits: + cpu: 200m + memory: 100Mi + requests: + cpu: 100m + memory: 50Mi + imagePullSecrets: + - name: '' + nodeSelector: + beta.kubernetes.io/os: linux + serviceAccountName: mongodb-enterprise-operator + permissions: + - rules: + - apiGroups: + - '' + resources: + - configmaps + - secrets + - services + verbs: + - get + - list + - create + - update + - delete + - apiGroups: + - apps + resources: + - statefulsets + verbs: + - '*' + - apiGroups: + - apiextensions.k8s.io + resources: + - customresourcedefinitions + verbs: + - get + - list + - watch + - create + - delete + - apiGroups: + - mongodb.com + resources: + - '*' + verbs: + - '*' + serviceAccountName: mongodb-enterprise-operator + strategy: deployment + maintainers: + - email: support@mongodb.com + name: 'MongoDB, Inc' + 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. + + + To start using the operator you'll need an account in MongoDB Cloud Manager. + + + By installing this integration, you will be able to deploy MongoDB instances + with a single simple command. + + + ### 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. diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-replicasets.crd.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-replicasets.crd.yaml new file mode 100644 index 0000000000..edd9464efb --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-replicasets.crd.yaml @@ -0,0 +1,37 @@ +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: mongodbreplicasets.mongodb.com +spec: + group: mongodb.com + version: v1 + names: + plural: mongodbreplicasets + singular: mongodbreplicaset + shortNames: + - mrs + kind: MongoDbReplicaSet + listKind: MongoDbReplicaSetList + scope: Namespaced + validation: + openAPIV3Schema: + properties: + spec: + required: + - credentials + - project + - version + - members + properties: + members: + type: integer + maximum: 50 + minimum: 1 + spec: + properties: + credentials: + type: string + project: + type: string + version: + type: string \ No newline at end of file diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-shardedclusters.crd.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-shardedclusters.crd.yaml new file mode 100644 index 0000000000..f0189be947 --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-shardedclusters.crd.yaml @@ -0,0 +1,50 @@ +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: mongodbshardedclusters.mongodb.com +spec: + group: mongodb.com + version: v1 + names: + plural: mongodbshardedclusters + singular: mongodbshardedcluster + shortNames: + - msc + kind: MongoDbShardedCluster + listKind: MongoDbShardedClusterList + scope: Namespaced + validation: + openAPIV3Schema: + properties: + spec: + required: + - credentials + - project + - version + - shardCount + - mongodsPerShardCount + - mongosCount + - configServerCount + properties: + configServerCount: + type: integer + maximum: 50 + minimum: 1 + mongodsPerShardCount: + type: integer + maximum: 50 + minimum: 1 + mongosCount: + type: integer + minimum: 1 + shardCount: + type: integer + minimum: 1 + spec: + properties: + credentials: + type: string + project: + type: string + version: + type: string \ No newline at end of file diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-standalones.crd.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-standalones.crd.yaml new file mode 100644 index 0000000000..0ca825ed92 --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-standalones.crd.yaml @@ -0,0 +1,32 @@ +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: mongodbstandalones.mongodb.com +spec: + group: mongodb.com + version: v1 + names: + plural: mongodbstandalones + singular: mongodbstandalone + shortNames: + - mst + kind: MongoDbStandalone + listKind: MongoDbStandaloneList + scope: Namespaced + validation: + openAPIV3Schema: + properties: + spec: + required: + - credentials + - project + - version + properties: + spec: + properties: + credentials: + type: string + project: + type: string + version: + type: string \ No newline at end of file From ca4f9b4d0b9e30b33b2db8b4998a136f8316b6a5 Mon Sep 17 00:00:00 2001 From: robszumski Date: Tue, 4 Sep 2018 13:08:52 -0700 Subject: [PATCH 03/19] certified-operators: add Couchbase CSV + CRD --- .../couchbase-cluster.crd.yaml | 341 ++++++++++++++++++ .../couchbase-enterprise.package.yaml | 5 + ...couchbase.1.0.0.clusterserviceversion.yaml | 249 +++++++++++++ 3 files changed, 595 insertions(+) create mode 100644 deploy/chart/catalog_resources/certified-operators/couchbase-cluster.crd.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml diff --git a/deploy/chart/catalog_resources/certified-operators/couchbase-cluster.crd.yaml b/deploy/chart/catalog_resources/certified-operators/couchbase-cluster.crd.yaml new file mode 100644 index 0000000000..edf3d46036 --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/couchbase-cluster.crd.yaml @@ -0,0 +1,341 @@ +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: couchbaseclusters.couchbase.com +spec: + group: couchbase.com + version: v1 + names: + plural: couchbaseclusters + singular: couchbasecluster + shortNames: + - couchbase + - cbc + kind: CouchbaseCluster + listKind: CouchbaseClusterList + scope: Namespaced + validation: + openAPIV3Schema: + properties: + spec: + required: + - baseImage + - version + - authSecret + - cluster + - servers + properties: + adminConsoleServices: + type: array + items: + type: string + enum: + - data + - index + - query + - search + - eventing + - analytics + buckets: + type: array + items: + type: object + required: + - name + - type + - memoryQuota + properties: + enableFlush: + type: boolean + enableIndexReplica: + type: boolean + ioPriority: + type: string + enum: + - high + - low + name: + type: string + pattern: '^[a-zA-Z0-9._\-%]*$' + evictionPolicy: + type: string + enum: + - valueOnly + - fullEviction + - noEviction + - nruEviction + memoryQuota: + type: integer + minimum: 100 + type: + type: string + enum: + - couchbase + - ephemeral + - memcached + replicas: + type: integer + maximum: 3 + minimum: 0 + conflictResolution: + type: string + enum: + - seqno + - lww + baseImage: + type: string + antiAffinity: + type: boolean + exposeAdminConsole: + type: boolean + paused: + type: boolean + servers: + type: array + minLength: 1 + items: + type: object + required: + - size + - name + - services + properties: + name: + type: string + minLength: 1 + pattern: '^[-_a-zA-Z0-9]+$' + pod: + type: object + properties: + automountServiceAccountToken: + type: boolean + couchbaseEnv: + type: array + items: + type: object + properties: + name: + type: string + value: + type: string + labels: + type: object + nodeSelector: + type: object + resources: + type: object + properties: + limits: + type: object + properties: + cpu: + type: string + memory: + type: string + storage: + type: string + requests: + type: object + properties: + cpu: + type: string + memory: + type: string + storage: + type: string + tolerations: + type: array + items: + type: object + required: + - key + - operator + - value + - effect + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + type: integer + value: + type: string + volumeMounts: + type: object + required: + - default + properties: + analytics: + type: array + items: + type: string + data: + type: string + default: + type: string + index: + type: string + serverGroups: + type: array + items: + type: string + services: + type: array + minLength: 1 + items: + type: string + enum: + - data + - index + - query + - search + - eventing + - analytics + size: + type: integer + minimum: 1 + disableBucketManagement: + type: boolean + volumeClaimTemplates: + type: array + items: + type: object + required: + - metadata + - spec + properties: + metadata: + type: object + required: + - name + properties: + name: + type: string + spec: + type: object + required: + - resources + - storageClassName + properties: + resources: + type: object + properties: + limits: + type: object + required: + - storage + properties: + storage: + type: string + requests: + type: object + required: + - storage + properties: + storage: + type: string + storageClassName: + type: string + serverGroups: + type: array + items: + type: string + version: + type: string + pattern: '^([\w\d]+-)?\d+\.\d+.\d+(-[\w\d]+)?$' + softwareUpdateNotifications: + type: boolean + authSecret: + type: string + minLength: 1 + cluster: + type: object + required: + - dataServiceMemoryQuota + - indexServiceMemoryQuota + - searchServiceMemoryQuota + - eventingServiceMemoryQuota + - analyticsServiceMemoryQuota + - indexStorageSetting + - autoFailoverTimeout + - autoFailoverMaxCount + properties: + autoFailoverTimeout: + type: integer + maximum: 3600 + minimum: 5 + autoFailoverOnDataDiskIssues: + type: boolean + clusterName: + type: string + indexStorageSetting: + type: string + enum: + - plasma + - memory_optimized + analyticsServiceMemoryQuota: + type: integer + minimum: 1024 + eventingServiceMemoryQuota: + type: integer + minimum: 256 + searchServiceMemoryQuota: + type: integer + minimum: 256 + autoFailoverMaxCount: + type: integer + maximum: 3 + minimum: 1 + dataServiceMemoryQuota: + type: integer + minimum: 256 + autoFailoverOnDataDiskIssuesTimePeriod: + type: integer + maximum: 3600 + minimum: 5 + indexServiceMemoryQuota: + type: integer + minimum: 256 + autoFailoverServerGroup: + type: boolean + tls: + type: object + properties: + static: + type: object + properties: + member: + type: object + properties: + serverSecret: + type: string + operatorSecret: + type: string + exposedFeatures: + type: array + items: + type: string + enum: + - admin + - xdcr + - client + versions: + - name: v1 + served: true + storage: true + additionalPrinterColumns: + - name: Age + type: date + description: >- + CreationTimestamp is a timestamp representing the server time when this + object was created. It is not guaranteed to be set in happens-before + order across separate operations. Clients may not set this value. It is + represented in RFC3339 form and is in UTC. + + + Populated by the system. Read-only. Null for lists. More info: + https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + JSONPath: .metadata.creationTimestamp \ No newline at end of file diff --git a/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml b/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml new file mode 100644 index 0000000000..56f0d865df --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml @@ -0,0 +1,5 @@ +#! package-manifest: ./deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion +packageName: couchbase-enterprise +channels: +- name: stable + currentCSV: couchbase.v1.0.0 diff --git a/deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml new file mode 100644 index 0000000000..ac13ad308c --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml @@ -0,0 +1,249 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: >- + [{"apiVersion":"couchbase.com/v1","kind":"CouchbaseCluster","metadata":{"name":"cb-example","namespace":"default"},"spec":{"authSecret":"cb-example-auth","baseImage":"registry.connect.redhat.com/couchbase/server","buckets":[{"conflictResolution":"seqno","enableFlush":true,"evictionPolicy":"fullEviction","ioPriority":"high","memoryQuota":128,"name":"default","replicas":1,"type":"couchbase"}],"cluster":{"analyticsServiceMemoryQuota":1024,"autoFailoverMaxCount":3,"autoFailoverOnDataDiskIssues":true,"autoFailoverOnDataDiskIssuesTimePeriod":120,"autoFailoverServerGroup":false,"autoFailoverTimeout":120,"clusterName":"cb-example","dataServiceMemoryQuota":256,"eventingServiceMemoryQuota":256,"indexServiceMemoryQuota":256,"indexStorageSetting":"memory_optimized","searchServiceMemoryQuota":256},"servers":[{"name":"all_services","services":["data","index","query","search","eventing","analytics"],"size":3}],"version":"5.5.1-1"}}] + name: couchbase-operator.v1.0.0 + namespace: placeholder +spec: + customresourcedefinitions: + owned: + - description: Manages Couchbase clusters + displayName: Couchbase Operator + kind: CouchbaseCluster + name: couchbaseclusters.couchbase.com + resources: + - kind: Service + name: '' + version: v1 + - kind: Pod + name: '' + version: v1 + specDescriptors: + - description: The name of the secret object that stores the admin credentials. + displayName: Auth Secret + path: authSecret + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:Secret' + statusDescriptors: + - description: The desired number of member Pods for the deployment. + displayName: Size + path: size + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:podCount' + - description: The current status of the Couchbase cluster. + displayName: Status + path: phase + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes.phase' + - description: Explanation for the current status of the application. + displayName: Status Details + path: reason + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes.phase:reason' + - description: The status of each of the member Pods for the Couchbase cluster. + displayName: Member Status + path: members + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:podStatuses' + - description: The current version of the Couchbase cluster. + displayName: Current Version + path: currentVersion + - description: >- + The port the Couchbase Admin Console can be accessed on from any + node in the OpenShift cluster. + displayName: Admin Console Port + path: adminConsolePort + - description: >- + The SSL port the Couchbase Admin Console can be accessed on from + any node in the OpenShift cluster. + displayName: SSL Admin Console Port + path: adminConsolePortSSL + version: v1 + keywords: + - couchbase + - database + - key value + - nosql + - open source + displayName: Couchbase Operator + provider: + name: Couchbase + maturity: stable + version: 1.0.0 + icon: + - base64data: >- + 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 + mediatype: image/png + links: + - name: Couchbase + url: 'https://www.couchbase.com' + - name: Documentation + url: 'https://docs.couchbase.com/operator/1.0/overview.html' + - name: Downloads + url: 'https://www.couchbase.com/downloads' + install: + spec: + deployments: + - name: couchbase-operator + spec: + replicas: 1 + selector: + matchLabels: + name: couchbase-operator + template: + metadata: + labels: + name: couchbase-operator + spec: + containers: + - command: + - couchbase-operator + env: + - name: MY_POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: MY_POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + image: 'registry.connect.redhat.com/couchbase/operator:1.0.0-1' + name: couchbase-operator + ports: + - containerPort: 8080 + name: readiness-port + readinessProbe: + failureThreshold: 19 + httpGet: + path: /readyz + port: readiness-port + initialDelaySeconds: 3 + periodSeconds: 3 + serviceAccountName: couchbase-operator + permissions: + - rules: + - apiGroups: + - couchbase.com + resources: + - couchbaseclusters + verbs: + - '*' + - apiGroups: + - storage.k8s.io + resources: + - storageclasses + verbs: + - get + - apiGroups: + - apiextensions.k8s.io + resources: + - customresourcedefinitions + verbs: + - '*' + - apiGroups: + - '' + resources: + - pods + - services + - endpoints + - persistentvolumeclaims + - events + - secrets + verbs: + - '*' + - apiGroups: + - '' + resources: + - persistentvolumes + verbs: + - get + - watch + - apiGroups: + - apps + resources: + - deployments + verbs: + - '*' + - apiGroups: + - '' + resources: + - secrets + verbs: + - get + serviceAccountName: couchbase-operator + strategy: deployment + maintainers: + - email: support@couchbase.com + name: Couchbase + description: > + The Couchbase Autonomous Operator allows users to easily deploy, manage, and + maintain Couchbase deployments on OpenShift. By installing this integration + you will be able to deply Couchbase Server clusters with a single command. + + + ## Supported Features + + + * **Automated cluster provisioning** - Deploying a Couchbase Cluster has + never been easier. Fill out a Couchbase specific configuration and let the + Couchbase Operator take care of provisioning nodes and setting up cluster to + your exact specification. + + + * **On-demand scalability** - Automatically scale your cluster up or down by + changing a simple configuration parameter and let the Couchbase Operator + handle provisioning of new nodes and joining them into the cluster. + + + * **Auto-recovery** - Detect Couchbase node failures, rebalance out bad + nodes, and bring the cluster back up to the desired capacity. Auto-recovery + is completely automated so you can sleep easy through the night knowing that + the Couchbase Operator will handle any failures. + + + * **Geo-distribution** - Replicate your data between datacenters to move + data closer to the users who consume it and protect against disaster + scenarios where an entire datacenter becomes unavailable. + + + * **Persistent storage** - Define persistent network-attached storage for + each node in your cluster to allow pods to be recovered even if the node + they were running on is no longer available. + + + * **Rack/zone awareness** - Tell the Couchbase Operator about availability + zones in your datacenter and let the operator take care of ensuring that + nodes in your cluster are deployed equally across each zone. + + + * **Supportability** - When things go wrong, use the cbopinfo tool provided + with the Couchbase Operator to collect relevant data about your Couchbase + deployment so that you can quickly address issues. + + + * **Centralized configuration management** - Manage your configuration + centrally with OpenShift. Updates to the configuration are watched by the + Couchbase Operator and actions are taken to make the target cluster match + the desired configuration. + + + ## About Couchbase Server + + + Built on the most powerful NoSQL technology, Couchbase Server delivers + unparalleled performance at scale, in any cloud. With features like + memory-first architecture, geo-distributed deployments, and workload + isolation, Couchbase Server excels at supporting mission-critical + applications at scale while maintaining submillisecond latencies and 99.999% + availability. Plus, with the most comprehensive SQL-compatible query + language (N1QL), migrating from RDBMS to Couchbase Server is easy with ANSI + joins. + selector: + matchLabels: + alm-owner-etcd: couchbaseoperator + operated-by: couchbaseoperator + labels: + alm-owner-etcd: couchbaseoperator + operated-by: couchbaseoperator From e3873df5a48c3f123c1ee6350ce25cf2466e4805 Mon Sep 17 00:00:00 2001 From: robszumski Date: Wed, 5 Sep 2018 10:55:58 -0700 Subject: [PATCH 04/19] certified-operators: add Dynatrace CSV + CRD --- ...onitoring.0.1.0.clusterserviceversion.yaml | 203 ++++++++++++++++++ .../dynatrace-monitoring.package.yaml | 5 + .../dynatrace-oneagent.crd.yaml | 13 ++ 3 files changed, 221 insertions(+) create mode 100644 deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml create mode 100644 deploy/chart/catalog_resources/certified-operators/dynatrace-oneagent.crd.yaml diff --git a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion.yaml new file mode 100644 index 0000000000..efa6700aab --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion.yaml @@ -0,0 +1,203 @@ +# Data from: +# https://raw.githubusercontent.com/Dynatrace/dynatrace-oneagent-operator/v0.1.0/deploy/openshift.yaml +# https://raw.githubusercontent.com/Dynatrace/dynatrace-oneagent-operator/v0.1.0/deploy/cr.yaml +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: >- + [{"apiVersion":"dynatrace.com/v1alpha1","kind":"OneAgent","metadata":{"name":"oneagent"},"spec":{"apiUrl":"https://ENVIRONMENTID.live.dynatrace.com/api","args":["APP_LOG_CONTENT_ACCESS=1"],"image":"registry.connect.redhat.com/dynatrace/oneagent"}}] + name: dynatrace-monitoring.v0.1.0 + namespace: placeholder +spec: + customresourcedefinitions: + owned: + - description: Dyantrace OneAgent monitoring agent + displayName: Dynatrace OneAgent + group: dynatrace.com + kind: OneAgent + name: oneagent.dynatrace.com + resources: + - kind: DaemonSet + name: '' + version: v1beta2 + - kind: Pod + name: '' + version: v1 + specDescriptors: + - description: Credentials for the OneAgent to connect back to Dynatrace. + displayName: API and Pass Tokens + path: tokens + x-descriptors: + - 'urn:alm:descriptor:io.kubernetes:core:v1:Secret' + - description: >- + 'Location of the Dynatrace API to connect to, including your + specific environment ID' + displayName: API URL + path: apiUrl + x-descriptors: + - 'urn:alm:descriptor:com.tectonic.ui:text' + version: v1alpha1 + keywords: + - monitoring + displayName: Dynatrace OneAgent + provider: + name: 'Dynatrace, Inc' + maturity: stable + version: 0.1.0 + icon: + - base64data: >- + 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 mediatype: image/png # todo(Dynatrace): add a logo in PNG or SVG format, base64'd + links: + - name: Operator Deploy Guide + url: https://www.dynatrace.com/support/help/cloud-platforms/openshift/full-stack/deployment/deploy-oneagent-on-openshift-container-platform/ + - name: OpenShift Monitoring Info + url: https://www.dynatrace.com/technologies/openshift-monitoring/ + install: + spec: + deployments: + - name: dynatrace-operator + spec: + replicas: 1 + selector: + matchLabels: + name: dynatrace-oneagent-operator + template: + metadata: + labels: + dynatrace: operator + name: dynatrace-oneagent-operator + operator: oneagent + spec: + containers: + - command: + - dynatrace-oneagent-operator + env: + - name: MY_POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + image: >- + registry.connect.redhat.com/dynatrace/dynatrace-oneagent-operator-0-1-0:v0.1.0-rhcc.2 + imagePullPolicy: Always + name: dynatrace-oneagent-operator + resources: + limits: + cpu: 200m + memory: 128Mi + requests: + cpu: 100m + memory: 64Mi + nodeSelector: + beta.kubernetes.io/os: linux + serviceAccountName: dynatrace-oneagent-operator + permissions: + - rules: + - apiGroups: + - dynatrace.com + resources: + - oneagents + verbs: + - get + - list + - watch + - update + - apiGroups: + - apps + resources: + - daemonsets + verbs: + - get + - list + - watch + - create + - update + - delete + - apiGroups: + - '' + resources: + - pods + verbs: + - get + - list + - watch + - delete + - apiGroups: + - '' + resources: + - secrets + verbs: + - get + - list + - watch + - apiGroups: + - dynatrace.com + resources: + - oneagents/finalizers + verbs: + - update + serviceAccountName: dynatrace-oneagent-operator + strategy: deployment + maintainers: + - email: support@dynatrace.com + name: 'Dynatrace, Inc' + description: > + Install full-stack monitoring of [OpenShift + clusters](https://www.dynatrace.com/technologies/openshift-monitoring/) with + the Dynatrace OneAgent on your cluster. OneAgent connects back to + Dynatrace's hosted monitoring tools. + + ## Before Your Start + + 1\. Make sure to install the Security Context Constraint (SCC) in order for + the agent to properly monitor all aspects of your Pods: + + + ``` $ oc create sa dynatrace-oneagent ``` + + + ``` $ oc adm policy add-scc-to-user privileged + system:serviceaccount::dynatrace-oneagent ``` + + + 2\. Add a Secret within the Project that contians your API and PaaS tokens + + + Get an [API + token](https://www.dynatrace.com/support/help/get-started/introduction/why-do-i-need-an-access-token-and-an-environment-id/#anchor-access-tokens) + for the Dynatrace API. This token is later referenced as `API_TOKEN`. + + + Get a [Platform-as-a-Service + token](https://www.dynatrace.com/support/help/get-started/introduction/why-do-i-need-an-access-token-and-an-environment-id/#anchor-access-tokens). + This token is later referenced as `PAAS_TOKEN`. + + + ``` $ oc -n dynatrace create secret generic oneagent + --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" + ``` + + + You may update this Secret at any time to rotate the tokens. + + ## Advanced Options ## + + **Image Override** - use a copy of the OneAgent container image from a + registry other than Red Hat's + + + **NodeSelectors** - select a subset of your cluster's Nodes to run OneAgent + on, based on labels + + + **Tolerations** - add specific tolerations to the agent so that it can + monitor all of the Nodes in your cluster + + + **Disable Certificate Checking** - disable any certificate validation that + may interact poorly with proxies with in your cluster + + + For a complete list of supported parameters please consult the [Operator + Deploy + Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#parameters). \ No newline at end of file diff --git a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml new file mode 100644 index 0000000000..6e8bb2c52a --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml @@ -0,0 +1,5 @@ +#! package-manifest: ./deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion +packageName: dynatrace-monitoring +channels: +- name: stable + currentCSV: dynatrace-monitoring.v0.1.0 diff --git a/deploy/chart/catalog_resources/certified-operators/dynatrace-oneagent.crd.yaml b/deploy/chart/catalog_resources/certified-operators/dynatrace-oneagent.crd.yaml new file mode 100644 index 0000000000..c24e353674 --- /dev/null +++ b/deploy/chart/catalog_resources/certified-operators/dynatrace-oneagent.crd.yaml @@ -0,0 +1,13 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: oneagents.dynatrace.com +spec: + group: dynatrace.com + names: + kind: OneAgent + listKind: OneAgentList + plural: oneagents + singular: oneagent + scope: Namespaced + version: v1alpha1 \ No newline at end of file From e53f699977dc7770981ed7f1e26269237c825944 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Thu, 6 Sep 2018 13:57:21 -0700 Subject: [PATCH 05/19] certified-operators: update Dynatrace version --- ...monitoring.0.2.0.clusterserviceversion.yaml} | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) rename deploy/chart/catalog_resources/certified-operators/{dynatrace-monitoring.0.1.0.clusterserviceversion.yaml => dynatrace-monitoring.0.2.0.clusterserviceversion.yaml} (94%) diff --git a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.2.0.clusterserviceversion.yaml similarity index 94% rename from deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion.yaml rename to deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.2.0.clusterserviceversion.yaml index efa6700aab..9398d1127b 100644 --- a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion.yaml +++ b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.2.0.clusterserviceversion.yaml @@ -1,13 +1,10 @@ -# Data from: -# https://raw.githubusercontent.com/Dynatrace/dynatrace-oneagent-operator/v0.1.0/deploy/openshift.yaml -# https://raw.githubusercontent.com/Dynatrace/dynatrace-oneagent-operator/v0.1.0/deploy/cr.yaml apiVersion: operators.coreos.com/v1alpha1 kind: ClusterServiceVersion metadata: annotations: alm-examples: >- [{"apiVersion":"dynatrace.com/v1alpha1","kind":"OneAgent","metadata":{"name":"oneagent"},"spec":{"apiUrl":"https://ENVIRONMENTID.live.dynatrace.com/api","args":["APP_LOG_CONTENT_ACCESS=1"],"image":"registry.connect.redhat.com/dynatrace/oneagent"}}] - name: dynatrace-monitoring.v0.1.0 + name: dynatrace-monitoring.v0.2.0 namespace: placeholder spec: customresourcedefinitions: @@ -16,7 +13,7 @@ spec: displayName: Dynatrace OneAgent group: dynatrace.com kind: OneAgent - name: oneagent.dynatrace.com + name: oneagents.dynatrace.com resources: - kind: DaemonSet name: '' @@ -36,7 +33,7 @@ spec: displayName: API URL path: apiUrl x-descriptors: - - 'urn:alm:descriptor:com.tectonic.ui:text' + - 'urn:alm:descriptor:com.tectonic.ui:label' version: v1alpha1 keywords: - monitoring @@ -44,10 +41,10 @@ spec: provider: name: 'Dynatrace, Inc' maturity: stable - version: 0.1.0 + version: 0.2.0 icon: - base64data: >- - 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 mediatype: image/png # todo(Dynatrace): add a logo in PNG or SVG format, base64'd + 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 links: - name: Operator Deploy Guide url: https://www.dynatrace.com/support/help/cloud-platforms/openshift/full-stack/deployment/deploy-oneagent-on-openshift-container-platform/ @@ -78,7 +75,7 @@ spec: fieldRef: fieldPath: metadata.namespace image: >- - registry.connect.redhat.com/dynatrace/dynatrace-oneagent-operator-0-1-0:v0.1.0-rhcc.2 + registry.connect.redhat.com/dynatrace/dynatrace-oneagent-operator:v0.2.0 imagePullPolicy: Always name: dynatrace-oneagent-operator resources: @@ -200,4 +197,4 @@ spec: For a complete list of supported parameters please consult the [Operator Deploy - Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#parameters). \ No newline at end of file + Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#parameters). From 7b84aea3c6a9fd5d37045d6832d26bdd5f10c32d Mon Sep 17 00:00:00 2001 From: Evan Cordell Date: Thu, 6 Sep 2018 22:36:26 -0400 Subject: [PATCH 06/19] Update directory loader test for amq-streams --- ...eams-kafkauser.cfrd.yaml => amq-streams-kafkauser.crd.yaml} | 0 .../catalog_resources/rh-operators/amq-streams.package.yaml | 2 +- ...sion.yaml => amq-streams.v1.0.0.clusterserviceversion.yaml} | 0 pkg/controller/registry/directory_loader_test.go | 3 ++- 4 files changed, 3 insertions(+), 2 deletions(-) rename deploy/chart/catalog_resources/rh-operators/{amq-streams-kafkauser.cfrd.yaml => amq-streams-kafkauser.crd.yaml} (100%) rename deploy/chart/catalog_resources/rh-operators/{amq-streams.v1.0.0-clusterserviceversion.yaml => amq-streams.v1.0.0.clusterserviceversion.yaml} (100%) diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.cfrd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.crd.yaml similarity index 100% rename from deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.cfrd.yaml rename to deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.crd.yaml diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml index 6aec3e67c3..6dfbd4e090 100644 --- a/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml @@ -2,4 +2,4 @@ packageName: amq-streams channels: - name: stable - currentCSV: amq-streams.v1.0.0 + currentCSV: amqstreams.v1.0.0.beta diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0.clusterserviceversion.yaml similarity index 100% rename from deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion.yaml rename to deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0.clusterserviceversion.yaml diff --git a/pkg/controller/registry/directory_loader_test.go b/pkg/controller/registry/directory_loader_test.go index c341bea621..5784898c7f 100644 --- a/pkg/controller/registry/directory_loader_test.go +++ b/pkg/controller/registry/directory_loader_test.go @@ -17,7 +17,8 @@ func TestDirectoryLoader(t *testing.T) { require.Contains(t, catalog.packages, "etcd") require.Contains(t, catalog.packages, "prometheus") - require.Len(t, catalog.packages, 2) + require.Contains(t, catalog.packages, "amq-streams") + require.Len(t, catalog.packages, 3) } func TestDirectoryLoaderHiddenDirs(t *testing.T) { From 2418a7aa940c407030cf4f6242a795c411b21496 Mon Sep 17 00:00:00 2001 From: Evan Cordell Date: Fri, 7 Sep 2018 10:28:08 -0400 Subject: [PATCH 07/19] include certified-operators catalog in deploy on CI --- .../catalog_resources/rh-operators/amq-streams-kafka.crd.yaml | 1 - .../rh-operators/amq-streams-kafkaconnect.crd.yaml | 1 - .../rh-operators/amq-streams-kafkaconnects2i.crd.yaml | 1 - .../rh-operators/amq-streams-kafkatopic.crd.yaml | 1 - .../rh-operators/amq-streams-kafkauser.crd.yaml | 1 - deploy/chart/values.yaml | 1 + 6 files changed, 1 insertion(+), 5 deletions(-) diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml index 7d7bfc97ed..d69249b137 100644 --- a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafka.crd.yaml @@ -1,4 +1,3 @@ ---- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml index f883b8808f..8d78ffe474 100644 --- a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnect.crd.yaml @@ -1,4 +1,3 @@ ---- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml index d321282965..731e38d073 100644 --- a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkaconnects2i.crd.yaml @@ -1,4 +1,3 @@ ---- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml index db4038fa6a..53eaa482af 100644 --- a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkatopic.crd.yaml @@ -1,4 +1,3 @@ ---- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.crd.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.crd.yaml index 5adbf195fd..5b9c8b93ed 100644 --- a/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.crd.yaml +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams-kafkauser.crd.yaml @@ -1,4 +1,3 @@ ---- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: diff --git a/deploy/chart/values.yaml b/deploy/chart/values.yaml index 9939227642..76b1977720 100644 --- a/deploy/chart/values.yaml +++ b/deploy/chart/values.yaml @@ -27,3 +27,4 @@ package: catalog_sources: - rh-operators + - certified-operators From 1b6a8abedc199f1c21fb9114665e2e26b19659cc Mon Sep 17 00:00:00 2001 From: Evan Cordell Date: Fri, 7 Sep 2018 11:32:53 -0400 Subject: [PATCH 08/19] Fix certified operators packages csv refs --- .../certified-operators/couchbase-enterprise.package.yaml | 2 +- .../certified-operators/dynatrace-monitoring.package.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml b/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml index 56f0d865df..8d0efcc61d 100644 --- a/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml +++ b/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml @@ -2,4 +2,4 @@ packageName: couchbase-enterprise channels: - name: stable - currentCSV: couchbase.v1.0.0 + currentCSV: couchbase-operator.v1.0.0 diff --git a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml index 6e8bb2c52a..42192ad4f9 100644 --- a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml +++ b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml @@ -2,4 +2,4 @@ packageName: dynatrace-monitoring channels: - name: stable - currentCSV: dynatrace-monitoring.v0.1.0 + currentCSV: dynatrace-monitoring.v0.2.0 From 12342859175f1c29f8bb43ba7d9ba11ea3da6fd6 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Fri, 7 Sep 2018 15:57:45 -0700 Subject: [PATCH 09/19] certified-operators: add required parameters for Couchbase --- .../couchbase.1.0.0.clusterserviceversion.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml index ac13ad308c..51bd28cd1f 100644 --- a/deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml +++ b/deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion.yaml @@ -227,6 +227,12 @@ spec: centrally with OpenShift. Updates to the configuration are watched by the Couchbase Operator and actions are taken to make the target cluster match the desired configuration. + + ## Required Parameters + + * `authSecret` - provide the name of a secret that contains two keys for the + `username` and `password` of the super user + ([documentation](https://docs.couchbase.com/operator/1.0/couchbase-cluster-config.html)) ## About Couchbase Server From b56f961b08b08686b95809d388e17e79b9cd7cb7 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Fri, 7 Sep 2018 16:01:49 -0700 Subject: [PATCH 10/19] certified-operators: add required parameters for Dynatrace --- .../dynatrace-monitoring.0.2.0.clusterserviceversion.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.2.0.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.2.0.clusterserviceversion.yaml index 9398d1127b..ed331c78a8 100644 --- a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.2.0.clusterserviceversion.yaml +++ b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.2.0.clusterserviceversion.yaml @@ -176,6 +176,12 @@ spec: You may update this Secret at any time to rotate the tokens. + + ## Required Parameters + + * `apiUrl` - provide the environment ID used in conjuction with this + monitoring agent in the API adddress, eg + `https://.live.dynatrace.com/api` ## Advanced Options ## From 5224a66b91ae9df114cf0b20359a00d53a8ef5a3 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Fri, 7 Sep 2018 16:10:49 -0700 Subject: [PATCH 11/19] certified-operators: add required parameters for MongoDB --- ...godb-enterprise.v0.3.2.clusterserviceversion.yaml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml index 56bcc1f66e..7f56378caa 100644 --- a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml @@ -240,14 +240,24 @@ spec: platforms, Ops Manager and Cloud Manager. + ## Before You Start + To start using the operator you'll need an account in MongoDB Cloud Manager. + + * [Create a Secret with your OpsManager API key](https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/#create-credentials) + * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/#create-onprem-project) By installing this integration, you will be able to deploy MongoDB instances with a single simple command. + + ## Required Parameters + + * `project` - Enter the name of the ConfigMap containing project information + * `credentials` - Enter the name of the Secret containing your OpsManager credentials - ### Supported MongoDB Deployment Types ### + ## Supported MongoDB Deployment Types ## * Standalone: An instance of mongod that is running as a single server and From 43f2525a18afaf0b6eb14266b66bc7f55b677199 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Tue, 11 Sep 2018 10:56:35 -0700 Subject: [PATCH 12/19] certified-operators: fix Mongo markdown lists --- .../mongodb-enterprise.v0.3.2.clusterserviceversion.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml index 7f56378caa..9cf2a52b2f 100644 --- a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml @@ -245,6 +245,7 @@ spec: To start using the operator you'll need an account in MongoDB Cloud Manager. * [Create a Secret with your OpsManager API key](https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/#create-credentials) + * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/#create-onprem-project) @@ -254,6 +255,7 @@ spec: ## Required Parameters * `project` - Enter the name of the ConfigMap containing project information + * `credentials` - Enter the name of the Secret containing your OpsManager credentials From 6594f84f2eee33abd0ab2749090c73333696518b Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Tue, 11 Sep 2018 10:59:42 -0700 Subject: [PATCH 13/19] certified-operators: add double spaces in Mongo markdown Our markdown engine is wacky --- .../mongodb-enterprise.v0.3.2.clusterserviceversion.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml index 9cf2a52b2f..23c113c50c 100644 --- a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion.yaml @@ -246,6 +246,7 @@ spec: * [Create a Secret with your OpsManager API key](https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/#create-credentials) + * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/#create-onprem-project) @@ -256,6 +257,7 @@ spec: * `project` - Enter the name of the ConfigMap containing project information + * `credentials` - Enter the name of the Secret containing your OpsManager credentials From 74eeb66cc7d87de47ea2b4d5e0ebe07504fa6b20 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Tue, 11 Sep 2018 11:12:50 -0700 Subject: [PATCH 14/19] certified-operators: use preview as channel for Couchbase --- .../certified-operators/couchbase-enterprise.package.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml b/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml index 8d0efcc61d..b3b20a08b7 100644 --- a/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml +++ b/deploy/chart/catalog_resources/certified-operators/couchbase-enterprise.package.yaml @@ -1,5 +1,5 @@ #! package-manifest: ./deploy/chart/catalog_resources/certified-operators/couchbase.1.0.0.clusterserviceversion packageName: couchbase-enterprise channels: -- name: stable +- name: preview currentCSV: couchbase-operator.v1.0.0 From 2a4366503cda0a7808b117aa488abc59ea40a380 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Tue, 11 Sep 2018 11:13:12 -0700 Subject: [PATCH 15/19] certified-operators: use preview as channel for MongoDB --- .../certified-operators/mongodb-enterprise.package.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml index 8a2bec72d2..dd0df27bd7 100644 --- a/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml +++ b/deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.package.yaml @@ -1,5 +1,5 @@ #! package-manifest: ./deploy/chart/catalog_resources/certified-operators/mongodb-enterprise.v0.3.2.clusterserviceversion packageName: mongodb-enterprise channels: -- name: stable +- name: preview currentCSV: mongodboperator.v0.3.2 From 1c2e6ee759bf0f079fd831392cc5fb442696a491 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Tue, 11 Sep 2018 11:13:30 -0700 Subject: [PATCH 16/19] certified-operators: use preview as channel for Dynatrace --- .../certified-operators/dynatrace-monitoring.package.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml index 42192ad4f9..72e43d02d7 100644 --- a/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml +++ b/deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.package.yaml @@ -1,5 +1,5 @@ #! package-manifest: ./deploy/chart/catalog_resources/certified-operators/dynatrace-monitoring.0.1.0.clusterserviceversion packageName: dynatrace-monitoring channels: -- name: stable +- name: preview currentCSV: dynatrace-monitoring.v0.2.0 From 0588ec7670a48ac890a6a7cec76c220e17a20a93 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Tue, 11 Sep 2018 11:13:51 -0700 Subject: [PATCH 17/19] rh-operators: use preview as channel for AMQ --- .../catalog_resources/rh-operators/amq-streams.package.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml b/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml index 6dfbd4e090..30e4a046a4 100644 --- a/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml +++ b/deploy/chart/catalog_resources/rh-operators/amq-streams.package.yaml @@ -1,5 +1,5 @@ #! package-manifest: ./deploy/chart/catalog_resources/rh-operators/amq-streams.v1.0.0-clusterserviceversion packageName: amq-streams channels: -- name: stable +- name: preview currentCSV: amqstreams.v1.0.0.beta From 2c815c89967106d30da7bc6072977cfb980554c1 Mon Sep 17 00:00:00 2001 From: Rob Szumski Date: Tue, 11 Sep 2018 11:16:26 -0700 Subject: [PATCH 18/19] rh-operators: use preview as channel for Prometheus --- .../catalog_resources/rh-operators/prometheus.package.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy/chart/catalog_resources/rh-operators/prometheus.package.yaml b/deploy/chart/catalog_resources/rh-operators/prometheus.package.yaml index cfd7f9ac03..ad3cb62fb0 100644 --- a/deploy/chart/catalog_resources/rh-operators/prometheus.package.yaml +++ b/deploy/chart/catalog_resources/rh-operators/prometheus.package.yaml @@ -1,5 +1,5 @@ #! package-manifest: ./deploy/chart/catalog_resources/rh-operators/prometheusoperator.0.22.2.clusterserviceversion.yaml packageName: prometheus channels: -- name: alpha +- name: preview currentCSV: prometheusoperator.0.22.2 From 5e6a3bfbb55076a687eb3ed2346de953d1f5d99c Mon Sep 17 00:00:00 2001 From: Evan Cordell Date: Tue, 11 Sep 2018 17:41:28 -0400 Subject: [PATCH 19/19] fix(e2e): update prometheus channel --- test/e2e/ocs_e2e_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/e2e/ocs_e2e_test.go b/test/e2e/ocs_e2e_test.go index 918538e57d..f98243078b 100644 --- a/test/e2e/ocs_e2e_test.go +++ b/test/e2e/ocs_e2e_test.go @@ -172,7 +172,7 @@ func TestInstallPrometheusOCS(t *testing.T) { inMem, err := registry.NewInMemoryFromConfigMap(c, testNamespace, catalogSource.Spec.ConfigMap) require.NoError(t, err) require.NotNil(t, inMem) - latestPrometheusCSV, err := inMem.FindCSVForPackageNameUnderChannel("prometheus", "alpha") + latestPrometheusCSV, err := inMem.FindCSVForPackageNameUnderChannel("prometheus", "preview") require.NoError(t, err) require.NotNil(t, latestPrometheusCSV)