apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: kafkamirrormakers.kafka.strimzi.io labels: app: '{{ template "strimzi.name" . }}' chart: '{{ template "strimzi.chart" . }}' component: kafkamirrormakers.kafka.strimzi.io-crd release: '{{ .Release.Name }}' heritage: '{{ .Release.Service }}' annotations: "helm.sh/hook": crd-install "helm.sh/hook-delete-policy": "before-hook-creation" spec: group: kafka.strimzi.io version: v1alpha1 scope: Namespaced names: kind: KafkaMirrorMaker listKind: KafkaMirrorMakerList singular: kafkamirrormaker plural: kafkamirrormakers shortNames: - kmm validation: openAPIV3Schema: properties: spec: type: object properties: replicas: type: integer minimum: 1 image: type: string whitelist: type: string consumer: type: object properties: numStreams: type: integer minimum: 1 groupId: type: string bootstrapServers: type: string authentication: type: object properties: certificateAndKey: type: object properties: certificate: type: string key: type: string secretName: type: string required: - certificate - key - secretName passwordSecret: type: object properties: password: type: string secretName: type: string required: - password - secretName type: type: string enum: - tls - scram-sha-512 username: type: string required: - type config: type: object tls: type: object properties: trustedCertificates: type: array items: type: object properties: certificate: type: string secretName: type: string required: - certificate - secretName required: - trustedCertificates required: - groupId - bootstrapServers producer: type: object properties: bootstrapServers: type: string authentication: type: object properties: certificateAndKey: type: object properties: certificate: type: string key: type: string secretName: type: string required: - certificate - key - secretName passwordSecret: type: object properties: password: type: string secretName: type: string required: - password - secretName type: type: string enum: - tls - scram-sha-512 username: type: string required: - type config: type: object tls: type: object properties: trustedCertificates: type: array items: type: object properties: certificate: type: string secretName: type: string required: - certificate - secretName required: - trustedCertificates required: - bootstrapServers 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?)?$' 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 matchFields: 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 matchFields: 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 jvmOptions: type: object properties: -XX: type: object -Xms: type: string pattern: '[0-9]+[mMgG]?' -Xmx: type: string pattern: '[0-9]+[mMgG]?' gcLoggingEnabled: type: boolean logging: type: object properties: loggers: type: object name: type: string type: type: string enum: - inline - external required: - type metrics: type: object template: type: object properties: deployment: type: object properties: metadata: type: object properties: labels: type: object annotations: type: object pod: type: object properties: metadata: type: object properties: labels: type: object annotations: type: object imagePullSecrets: type: array items: type: object properties: name: type: string securityContext: type: object properties: fsGroup: type: integer runAsGroup: type: integer runAsNonRoot: type: boolean runAsUser: type: integer seLinuxOptions: type: object properties: level: type: string role: type: string type: type: string user: type: string supplementalGroups: type: array items: type: integer sysctls: type: array items: type: object properties: name: type: string value: type: string terminationGracePeriodSeconds: type: integer minimum: 0 podDisruptionBudget: type: object properties: metadata: type: object properties: labels: type: object annotations: type: object maxUnavailable: type: integer minimum: 0 version: type: string required: - replicas - whitelist - consumer - producer