Collectd operator utilties
[demo.git] / vnfs / DAaaS / deploy / messaging / charts / strimzi-kafka-operator / templates / 045-Crd-kafkamirrormaker.yaml
1 apiVersion: apiextensions.k8s.io/v1beta1
2 kind: CustomResourceDefinition
3 metadata:
4   name: kafkamirrormakers.kafka.strimzi.io
5   labels:
6     app: '{{ template "strimzi.name" . }}'
7     chart: '{{ template "strimzi.chart" . }}'
8     component: kafkamirrormakers.kafka.strimzi.io-crd
9     release: '{{ .Release.Name }}'
10     heritage: '{{ .Release.Service }}'
11   annotations:
12     "helm.sh/hook": crd-install
13     "helm.sh/hook-delete-policy": "before-hook-creation"
14 spec:
15   group: kafka.strimzi.io
16   version: v1alpha1
17   scope: Namespaced
18   names:
19     kind: KafkaMirrorMaker
20     listKind: KafkaMirrorMakerList
21     singular: kafkamirrormaker
22     plural: kafkamirrormakers
23     shortNames:
24     - kmm
25   validation:
26     openAPIV3Schema:
27       properties:
28         spec:
29           type: object
30           properties:
31             replicas:
32               type: integer
33               minimum: 1
34             image:
35               type: string
36             whitelist:
37               type: string
38             consumer:
39               type: object
40               properties:
41                 numStreams:
42                   type: integer
43                   minimum: 1
44                 groupId:
45                   type: string
46                 bootstrapServers:
47                   type: string
48                 authentication:
49                   type: object
50                   properties:
51                     certificateAndKey:
52                       type: object
53                       properties:
54                         certificate:
55                           type: string
56                         key:
57                           type: string
58                         secretName:
59                           type: string
60                       required:
61                       - certificate
62                       - key
63                       - secretName
64                     passwordSecret:
65                       type: object
66                       properties:
67                         password:
68                           type: string
69                         secretName:
70                           type: string
71                       required:
72                       - password
73                       - secretName
74                     type:
75                       type: string
76                       enum:
77                       - tls
78                       - scram-sha-512
79                     username:
80                       type: string
81                   required:
82                   - type
83                 config:
84                   type: object
85                 tls:
86                   type: object
87                   properties:
88                     trustedCertificates:
89                       type: array
90                       items:
91                         type: object
92                         properties:
93                           certificate:
94                             type: string
95                           secretName:
96                             type: string
97                         required:
98                         - certificate
99                         - secretName
100                   required:
101                   - trustedCertificates
102               required:
103               - groupId
104               - bootstrapServers
105             producer:
106               type: object
107               properties:
108                 bootstrapServers:
109                   type: string
110                 authentication:
111                   type: object
112                   properties:
113                     certificateAndKey:
114                       type: object
115                       properties:
116                         certificate:
117                           type: string
118                         key:
119                           type: string
120                         secretName:
121                           type: string
122                       required:
123                       - certificate
124                       - key
125                       - secretName
126                     passwordSecret:
127                       type: object
128                       properties:
129                         password:
130                           type: string
131                         secretName:
132                           type: string
133                       required:
134                       - password
135                       - secretName
136                     type:
137                       type: string
138                       enum:
139                       - tls
140                       - scram-sha-512
141                     username:
142                       type: string
143                   required:
144                   - type
145                 config:
146                   type: object
147                 tls:
148                   type: object
149                   properties:
150                     trustedCertificates:
151                       type: array
152                       items:
153                         type: object
154                         properties:
155                           certificate:
156                             type: string
157                           secretName:
158                             type: string
159                         required:
160                         - certificate
161                         - secretName
162                   required:
163                   - trustedCertificates
164               required:
165               - bootstrapServers
166             resources:
167               type: object
168               properties:
169                 limits:
170                   type: object
171                   properties:
172                     cpu:
173                       type: string
174                       pattern: '[0-9]+m?$'
175                     memory:
176                       type: string
177                       pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$'
178                 requests:
179                   type: object
180                   properties:
181                     cpu:
182                       type: string
183                       pattern: '[0-9]+m?$'
184                     memory:
185                       type: string
186                       pattern: '[0-9]+([kKmMgGtTpPeE]i?)?$'
187             affinity:
188               type: object
189               properties:
190                 nodeAffinity:
191                   type: object
192                   properties:
193                     preferredDuringSchedulingIgnoredDuringExecution:
194                       type: array
195                       items:
196                         type: object
197                         properties:
198                           preference:
199                             type: object
200                             properties:
201                               matchExpressions:
202                                 type: array
203                                 items:
204                                   type: object
205                                   properties:
206                                     key:
207                                       type: string
208                                     operator:
209                                       type: string
210                                     values:
211                                       type: array
212                                       items:
213                                         type: string
214                               matchFields:
215                                 type: array
216                                 items:
217                                   type: object
218                                   properties:
219                                     key:
220                                       type: string
221                                     operator:
222                                       type: string
223                                     values:
224                                       type: array
225                                       items:
226                                         type: string
227                           weight:
228                             type: integer
229                     requiredDuringSchedulingIgnoredDuringExecution:
230                       type: object
231                       properties:
232                         nodeSelectorTerms:
233                           type: array
234                           items:
235                             type: object
236                             properties:
237                               matchExpressions:
238                                 type: array
239                                 items:
240                                   type: object
241                                   properties:
242                                     key:
243                                       type: string
244                                     operator:
245                                       type: string
246                                     values:
247                                       type: array
248                                       items:
249                                         type: string
250                               matchFields:
251                                 type: array
252                                 items:
253                                   type: object
254                                   properties:
255                                     key:
256                                       type: string
257                                     operator:
258                                       type: string
259                                     values:
260                                       type: array
261                                       items:
262                                         type: string
263                 podAffinity:
264                   type: object
265                   properties:
266                     preferredDuringSchedulingIgnoredDuringExecution:
267                       type: array
268                       items:
269                         type: object
270                         properties:
271                           podAffinityTerm:
272                             type: object
273                             properties:
274                               labelSelector:
275                                 type: object
276                                 properties:
277                                   matchExpressions:
278                                     type: array
279                                     items:
280                                       type: object
281                                       properties:
282                                         key:
283                                           type: string
284                                         operator:
285                                           type: string
286                                         values:
287                                           type: array
288                                           items:
289                                             type: string
290                                   matchLabels:
291                                     type: object
292                               namespaces:
293                                 type: array
294                                 items:
295                                   type: string
296                               topologyKey:
297                                 type: string
298                           weight:
299                             type: integer
300                     requiredDuringSchedulingIgnoredDuringExecution:
301                       type: array
302                       items:
303                         type: object
304                         properties:
305                           labelSelector:
306                             type: object
307                             properties:
308                               matchExpressions:
309                                 type: array
310                                 items:
311                                   type: object
312                                   properties:
313                                     key:
314                                       type: string
315                                     operator:
316                                       type: string
317                                     values:
318                                       type: array
319                                       items:
320                                         type: string
321                               matchLabels:
322                                 type: object
323                           namespaces:
324                             type: array
325                             items:
326                               type: string
327                           topologyKey:
328                             type: string
329                 podAntiAffinity:
330                   type: object
331                   properties:
332                     preferredDuringSchedulingIgnoredDuringExecution:
333                       type: array
334                       items:
335                         type: object
336                         properties:
337                           podAffinityTerm:
338                             type: object
339                             properties:
340                               labelSelector:
341                                 type: object
342                                 properties:
343                                   matchExpressions:
344                                     type: array
345                                     items:
346                                       type: object
347                                       properties:
348                                         key:
349                                           type: string
350                                         operator:
351                                           type: string
352                                         values:
353                                           type: array
354                                           items:
355                                             type: string
356                                   matchLabels:
357                                     type: object
358                               namespaces:
359                                 type: array
360                                 items:
361                                   type: string
362                               topologyKey:
363                                 type: string
364                           weight:
365                             type: integer
366                     requiredDuringSchedulingIgnoredDuringExecution:
367                       type: array
368                       items:
369                         type: object
370                         properties:
371                           labelSelector:
372                             type: object
373                             properties:
374                               matchExpressions:
375                                 type: array
376                                 items:
377                                   type: object
378                                   properties:
379                                     key:
380                                       type: string
381                                     operator:
382                                       type: string
383                                     values:
384                                       type: array
385                                       items:
386                                         type: string
387                               matchLabels:
388                                 type: object
389                           namespaces:
390                             type: array
391                             items:
392                               type: string
393                           topologyKey:
394                             type: string
395             tolerations:
396               type: array
397               items:
398                 type: object
399                 properties:
400                   effect:
401                     type: string
402                   key:
403                     type: string
404                   operator:
405                     type: string
406                   tolerationSeconds:
407                     type: integer
408                   value:
409                     type: string
410             jvmOptions:
411               type: object
412               properties:
413                 -XX:
414                   type: object
415                 -Xms:
416                   type: string
417                   pattern: '[0-9]+[mMgG]?'
418                 -Xmx:
419                   type: string
420                   pattern: '[0-9]+[mMgG]?'
421                 gcLoggingEnabled:
422                   type: boolean
423             logging:
424               type: object
425               properties:
426                 loggers:
427                   type: object
428                 name:
429                   type: string
430                 type:
431                   type: string
432                   enum:
433                   - inline
434                   - external
435               required:
436               - type
437             metrics:
438               type: object
439             template:
440               type: object
441               properties:
442                 deployment:
443                   type: object
444                   properties:
445                     metadata:
446                       type: object
447                       properties:
448                         labels:
449                           type: object
450                         annotations:
451                           type: object
452                 pod:
453                   type: object
454                   properties:
455                     metadata:
456                       type: object
457                       properties:
458                         labels:
459                           type: object
460                         annotations:
461                           type: object
462                     imagePullSecrets:
463                       type: array
464                       items:
465                         type: object
466                         properties:
467                           name:
468                             type: string
469                     securityContext:
470                       type: object
471                       properties:
472                         fsGroup:
473                           type: integer
474                         runAsGroup:
475                           type: integer
476                         runAsNonRoot:
477                           type: boolean
478                         runAsUser:
479                           type: integer
480                         seLinuxOptions:
481                           type: object
482                           properties:
483                             level:
484                               type: string
485                             role:
486                               type: string
487                             type:
488                               type: string
489                             user:
490                               type: string
491                         supplementalGroups:
492                           type: array
493                           items:
494                             type: integer
495                         sysctls:
496                           type: array
497                           items:
498                             type: object
499                             properties:
500                               name:
501                                 type: string
502                               value:
503                                 type: string
504                     terminationGracePeriodSeconds:
505                       type: integer
506                       minimum: 0
507                 podDisruptionBudget:
508                   type: object
509                   properties:
510                     metadata:
511                       type: object
512                       properties:
513                         labels:
514                           type: object
515                         annotations:
516                           type: object
517                     maxUnavailable:
518                       type: integer
519                       minimum: 0
520             version:
521               type: string
522           required:
523           - replicas
524           - whitelist
525           - consumer
526           - producer