1834d02f720b5a158fed530a438507fab5feed04
[demo.git] / vnfs / DAaaS / operator / charts / prometheus-operator / templates / prometheus-operator / crd-alertmanager.yaml
1 {{- if and .Release.IsInstall .Values.prometheusOperator.enabled .Values.prometheusOperator.createCustomResource -}}
2 # Source https://github.com/coreos/prometheus-operator/blob/master/contrib/kube-prometheus/manifests/0prometheus-operator-0alertmanagerCustomResourceDefinition.yaml
3 apiVersion: apiextensions.k8s.io/v1beta1
4 kind: CustomResourceDefinition
5 metadata:
6   creationTimestamp: null
7   name: {{ printf "alertmanagers.%s" (.Values.prometheusOperator.crdApiGroup | default "monitoring.coreos.com") }}
8   labels:
9     app: {{ template "prometheus-operator.name" . }}-operator
10 {{ include "prometheus-operator.labels" . | indent 4 }}
11   annotations:
12     "helm.sh/hook": crd-install
13     "helm.sh/hook-delete-policy": "before-hook-creation"
14 spec:
15   group: {{ .Values.prometheusOperator.crdApiGroup | default "monitoring.coreos.com" }}
16   names:
17     kind: Alertmanager
18     plural: alertmanagers
19   scope: Namespaced
20   validation:
21     openAPIV3Schema:
22       properties:
23         apiVersion:
24           description: 'APIVersion defines the versioned schema of this representation
25             of an object. Servers should convert recognized schemas to the latest
26             internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
27           type: string
28         kind:
29           description: 'Kind is a string value representing the REST resource this
30             object represents. Servers may infer this from the endpoint the client
31             submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
32           type: string
33         spec:
34           description: 'AlertmanagerSpec is a specification of the desired behavior
35             of the Alertmanager cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status'
36           properties:
37             additionalPeers:
38               description: AdditionalPeers allows injecting a set of additional Alertmanagers
39                 to peer with to form a highly available cluster.
40               items:
41                 type: string
42               type: array
43             affinity:
44               description: Affinity is a group of affinity scheduling rules.
45               properties:
46                 nodeAffinity:
47                   description: Node affinity is a group of node affinity scheduling
48                     rules.
49                   properties:
50                     preferredDuringSchedulingIgnoredDuringExecution:
51                       description: The scheduler will prefer to schedule pods to nodes
52                         that satisfy the affinity expressions specified by this field,
53                         but it may choose a node that violates one or more of the
54                         expressions. The node that is most preferred is the one with
55                         the greatest sum of weights, i.e. for each node that meets
56                         all of the scheduling requirements (resource request, requiredDuringScheduling
57                         affinity expressions, etc.), compute a sum by iterating through
58                         the elements of this field and adding "weight" to the sum
59                         if the node matches the corresponding matchExpressions; the
60                         node(s) with the highest sum are the most preferred.
61                       items:
62                         description: An empty preferred scheduling term matches all
63                           objects with implicit weight 0 (i.e. it's a no-op). A null
64                           preferred scheduling term matches no objects (i.e. is also
65                           a no-op).
66                         properties:
67                           preference:
68                             description: A null or empty node selector term matches
69                               no objects. The requirements of them are ANDed. The
70                               TopologySelectorTerm type implements a subset of the
71                               NodeSelectorTerm.
72                             properties:
73                               matchExpressions:
74                                 description: A list of node selector requirements
75                                   by node's labels.
76                                 items:
77                                   description: A node selector requirement is a selector
78                                     that contains values, a key, and an operator that
79                                     relates the key and values.
80                                   properties:
81                                     key:
82                                       description: The label key that the selector
83                                         applies to.
84                                       type: string
85                                     operator:
86                                       description: Represents a key's relationship
87                                         to a set of values. Valid operators are In,
88                                         NotIn, Exists, DoesNotExist. Gt, and Lt.
89                                       type: string
90                                     values:
91                                       description: An array of string values. If the
92                                         operator is In or NotIn, the values array
93                                         must be non-empty. If the operator is Exists
94                                         or DoesNotExist, the values array must be
95                                         empty. If the operator is Gt or Lt, the values
96                                         array must have a single element, which will
97                                         be interpreted as an integer. This array is
98                                         replaced during a strategic merge patch.
99                                       items:
100                                         type: string
101                                       type: array
102                                   required:
103                                   - key
104                                   - operator
105                                 type: array
106                               matchFields:
107                                 description: A list of node selector requirements
108                                   by node's fields.
109                                 items:
110                                   description: A node selector requirement is a selector
111                                     that contains values, a key, and an operator that
112                                     relates the key and values.
113                                   properties:
114                                     key:
115                                       description: The label key that the selector
116                                         applies to.
117                                       type: string
118                                     operator:
119                                       description: Represents a key's relationship
120                                         to a set of values. Valid operators are In,
121                                         NotIn, Exists, DoesNotExist. Gt, and Lt.
122                                       type: string
123                                     values:
124                                       description: An array of string values. If the
125                                         operator is In or NotIn, the values array
126                                         must be non-empty. If the operator is Exists
127                                         or DoesNotExist, the values array must be
128                                         empty. If the operator is Gt or Lt, the values
129                                         array must have a single element, which will
130                                         be interpreted as an integer. This array is
131                                         replaced during a strategic merge patch.
132                                       items:
133                                         type: string
134                                       type: array
135                                   required:
136                                   - key
137                                   - operator
138                                 type: array
139                           weight:
140                             description: Weight associated with matching the corresponding
141                               nodeSelectorTerm, in the range 1-100.
142                             format: int32
143                             type: integer
144                         required:
145                         - weight
146                         - preference
147                       type: array
148                     requiredDuringSchedulingIgnoredDuringExecution:
149                       description: A node selector represents the union of the results
150                         of one or more label queries over a set of nodes; that is,
151                         it represents the OR of the selectors represented by the node
152                         selector terms.
153                       properties:
154                         nodeSelectorTerms:
155                           description: Required. A list of node selector terms. The
156                             terms are ORed.
157                           items:
158                             description: A null or empty node selector term matches
159                               no objects. The requirements of them are ANDed. The
160                               TopologySelectorTerm type implements a subset of the
161                               NodeSelectorTerm.
162                             properties:
163                               matchExpressions:
164                                 description: A list of node selector requirements
165                                   by node's labels.
166                                 items:
167                                   description: A node selector requirement is a selector
168                                     that contains values, a key, and an operator that
169                                     relates the key and values.
170                                   properties:
171                                     key:
172                                       description: The label key that the selector
173                                         applies to.
174                                       type: string
175                                     operator:
176                                       description: Represents a key's relationship
177                                         to a set of values. Valid operators are In,
178                                         NotIn, Exists, DoesNotExist. Gt, and Lt.
179                                       type: string
180                                     values:
181                                       description: An array of string values. If the
182                                         operator is In or NotIn, the values array
183                                         must be non-empty. If the operator is Exists
184                                         or DoesNotExist, the values array must be
185                                         empty. If the operator is Gt or Lt, the values
186                                         array must have a single element, which will
187                                         be interpreted as an integer. This array is
188                                         replaced during a strategic merge patch.
189                                       items:
190                                         type: string
191                                       type: array
192                                   required:
193                                   - key
194                                   - operator
195                                 type: array
196                               matchFields:
197                                 description: A list of node selector requirements
198                                   by node's fields.
199                                 items:
200                                   description: A node selector requirement is a selector
201                                     that contains values, a key, and an operator that
202                                     relates the key and values.
203                                   properties:
204                                     key:
205                                       description: The label key that the selector
206                                         applies to.
207                                       type: string
208                                     operator:
209                                       description: Represents a key's relationship
210                                         to a set of values. Valid operators are In,
211                                         NotIn, Exists, DoesNotExist. Gt, and Lt.
212                                       type: string
213                                     values:
214                                       description: An array of string values. If the
215                                         operator is In or NotIn, the values array
216                                         must be non-empty. If the operator is Exists
217                                         or DoesNotExist, the values array must be
218                                         empty. If the operator is Gt or Lt, the values
219                                         array must have a single element, which will
220                                         be interpreted as an integer. This array is
221                                         replaced during a strategic merge patch.
222                                       items:
223                                         type: string
224                                       type: array
225                                   required:
226                                   - key
227                                   - operator
228                                 type: array
229                           type: array
230                       required:
231                       - nodeSelectorTerms
232                 podAffinity:
233                   description: Pod affinity is a group of inter pod affinity scheduling
234                     rules.
235                   properties:
236                     preferredDuringSchedulingIgnoredDuringExecution:
237                       description: The scheduler will prefer to schedule pods to nodes
238                         that satisfy the affinity expressions specified by this field,
239                         but it may choose a node that violates one or more of the
240                         expressions. The node that is most preferred is the one with
241                         the greatest sum of weights, i.e. for each node that meets
242                         all of the scheduling requirements (resource request, requiredDuringScheduling
243                         affinity expressions, etc.), compute a sum by iterating through
244                         the elements of this field and adding "weight" to the sum
245                         if the node has pods which matches the corresponding podAffinityTerm;
246                         the node(s) with the highest sum are the most preferred.
247                       items:
248                         description: The weights of all of the matched WeightedPodAffinityTerm
249                           fields are added per-node to find the most preferred node(s)
250                         properties:
251                           podAffinityTerm:
252                             description: Defines a set of pods (namely those matching
253                               the labelSelector relative to the given namespace(s))
254                               that this pod should be co-located (affinity) or not
255                               co-located (anti-affinity) with, where co-located is
256                               defined as running on a node whose value of the label
257                               with key <topologyKey> matches that of any node on which
258                               a pod of the set of pods is running
259                             properties:
260                               labelSelector:
261                                 description: A label selector is a label query over
262                                   a set of resources. The result of matchLabels and
263                                   matchExpressions are ANDed. An empty label selector
264                                   matches all objects. A null label selector matches
265                                   no objects.
266                                 properties:
267                                   matchExpressions:
268                                     description: matchExpressions is a list of label
269                                       selector requirements. The requirements are
270                                       ANDed.
271                                     items:
272                                       description: A label selector requirement is
273                                         a selector that contains values, a key, and
274                                         an operator that relates the key and values.
275                                       properties:
276                                         key:
277                                           description: key is the label key that the
278                                             selector applies to.
279                                           type: string
280                                         operator:
281                                           description: operator represents a key's
282                                             relationship to a set of values. Valid
283                                             operators are In, NotIn, Exists and DoesNotExist.
284                                           type: string
285                                         values:
286                                           description: values is an array of string
287                                             values. If the operator is In or NotIn,
288                                             the values array must be non-empty. If
289                                             the operator is Exists or DoesNotExist,
290                                             the values array must be empty. This array
291                                             is replaced during a strategic merge patch.
292                                           items:
293                                             type: string
294                                           type: array
295                                       required:
296                                       - key
297                                       - operator
298                                     type: array
299                                   matchLabels:
300                                     description: matchLabels is a map of {key,value}
301                                       pairs. A single {key,value} in the matchLabels
302                                       map is equivalent to an element of matchExpressions,
303                                       whose key field is "key", the operator is "In",
304                                       and the values array contains only "value".
305                                       The requirements are ANDed.
306                                     type: object
307                               namespaces:
308                                 description: namespaces specifies which namespaces
309                                   the labelSelector applies to (matches against);
310                                   null or empty list means "this pod's namespace"
311                                 items:
312                                   type: string
313                                 type: array
314                               topologyKey:
315                                 description: This pod should be co-located (affinity)
316                                   or not co-located (anti-affinity) with the pods
317                                   matching the labelSelector in the specified namespaces,
318                                   where co-located is defined as running on a node
319                                   whose value of the label with key topologyKey matches
320                                   that of any node on which any of the selected pods
321                                   is running. Empty topologyKey is not allowed.
322                                 type: string
323                             required:
324                             - topologyKey
325                           weight:
326                             description: weight associated with matching the corresponding
327                               podAffinityTerm, in the range 1-100.
328                             format: int32
329                             type: integer
330                         required:
331                         - weight
332                         - podAffinityTerm
333                       type: array
334                     requiredDuringSchedulingIgnoredDuringExecution:
335                       description: If the affinity requirements specified by this
336                         field are not met at scheduling time, the pod will not be
337                         scheduled onto the node. If the affinity requirements specified
338                         by this field cease to be met at some point during pod execution
339                         (e.g. due to a pod label update), the system may or may not
340                         try to eventually evict the pod from its node. When there
341                         are multiple elements, the lists of nodes corresponding to
342                         each podAffinityTerm are intersected, i.e. all terms must
343                         be satisfied.
344                       items:
345                         description: Defines a set of pods (namely those matching
346                           the labelSelector relative to the given namespace(s)) that
347                           this pod should be co-located (affinity) or not co-located
348                           (anti-affinity) with, where co-located is defined as running
349                           on a node whose value of the label with key <topologyKey>
350                           matches that of any node on which a pod of the set of pods
351                           is running
352                         properties:
353                           labelSelector:
354                             description: A label selector is a label query over a
355                               set of resources. The result of matchLabels and matchExpressions
356                               are ANDed. An empty label selector matches all objects.
357                               A null label selector matches no objects.
358                             properties:
359                               matchExpressions:
360                                 description: matchExpressions is a list of label selector
361                                   requirements. The requirements are ANDed.
362                                 items:
363                                   description: A label selector requirement is a selector
364                                     that contains values, a key, and an operator that
365                                     relates the key and values.
366                                   properties:
367                                     key:
368                                       description: key is the label key that the selector
369                                         applies to.
370                                       type: string
371                                     operator:
372                                       description: operator represents a key's relationship
373                                         to a set of values. Valid operators are In,
374                                         NotIn, Exists and DoesNotExist.
375                                       type: string
376                                     values:
377                                       description: values is an array of string values.
378                                         If the operator is In or NotIn, the values
379                                         array must be non-empty. If the operator is
380                                         Exists or DoesNotExist, the values array must
381                                         be empty. This array is replaced during a
382                                         strategic merge patch.
383                                       items:
384                                         type: string
385                                       type: array
386                                   required:
387                                   - key
388                                   - operator
389                                 type: array
390                               matchLabels:
391                                 description: matchLabels is a map of {key,value} pairs.
392                                   A single {key,value} in the matchLabels map is equivalent
393                                   to an element of matchExpressions, whose key field
394                                   is "key", the operator is "In", and the values array
395                                   contains only "value". The requirements are ANDed.
396                                 type: object
397                           namespaces:
398                             description: namespaces specifies which namespaces the
399                               labelSelector applies to (matches against); null or
400                               empty list means "this pod's namespace"
401                             items:
402                               type: string
403                             type: array
404                           topologyKey:
405                             description: This pod should be co-located (affinity)
406                               or not co-located (anti-affinity) with the pods matching
407                               the labelSelector in the specified namespaces, where
408                               co-located is defined as running on a node whose value
409                               of the label with key topologyKey matches that of any
410                               node on which any of the selected pods is running. Empty
411                               topologyKey is not allowed.
412                             type: string
413                         required:
414                         - topologyKey
415                       type: array
416                 podAntiAffinity:
417                   description: Pod anti affinity is a group of inter pod anti affinity
418                     scheduling rules.
419                   properties:
420                     preferredDuringSchedulingIgnoredDuringExecution:
421                       description: The scheduler will prefer to schedule pods to nodes
422                         that satisfy the anti-affinity expressions specified by this
423                         field, but it may choose a node that violates one or more
424                         of the expressions. The node that is most preferred is the
425                         one with the greatest sum of weights, i.e. for each node that
426                         meets all of the scheduling requirements (resource request,
427                         requiredDuringScheduling anti-affinity expressions, etc.),
428                         compute a sum by iterating through the elements of this field
429                         and adding "weight" to the sum if the node has pods which
430                         matches the corresponding podAffinityTerm; the node(s) with
431                         the highest sum are the most preferred.
432                       items:
433                         description: The weights of all of the matched WeightedPodAffinityTerm
434                           fields are added per-node to find the most preferred node(s)
435                         properties:
436                           podAffinityTerm:
437                             description: Defines a set of pods (namely those matching
438                               the labelSelector relative to the given namespace(s))
439                               that this pod should be co-located (affinity) or not
440                               co-located (anti-affinity) with, where co-located is
441                               defined as running on a node whose value of the label
442                               with key <topologyKey> matches that of any node on which
443                               a pod of the set of pods is running
444                             properties:
445                               labelSelector:
446                                 description: A label selector is a label query over
447                                   a set of resources. The result of matchLabels and
448                                   matchExpressions are ANDed. An empty label selector
449                                   matches all objects. A null label selector matches
450                                   no objects.
451                                 properties:
452                                   matchExpressions:
453                                     description: matchExpressions is a list of label
454                                       selector requirements. The requirements are
455                                       ANDed.
456                                     items:
457                                       description: A label selector requirement is
458                                         a selector that contains values, a key, and
459                                         an operator that relates the key and values.
460                                       properties:
461                                         key:
462                                           description: key is the label key that the
463                                             selector applies to.
464                                           type: string
465                                         operator:
466                                           description: operator represents a key's
467                                             relationship to a set of values. Valid
468                                             operators are In, NotIn, Exists and DoesNotExist.
469                                           type: string
470                                         values:
471                                           description: values is an array of string
472                                             values. If the operator is In or NotIn,
473                                             the values array must be non-empty. If
474                                             the operator is Exists or DoesNotExist,
475                                             the values array must be empty. This array
476                                             is replaced during a strategic merge patch.
477                                           items:
478                                             type: string
479                                           type: array
480                                       required:
481                                       - key
482                                       - operator
483                                     type: array
484                                   matchLabels:
485                                     description: matchLabels is a map of {key,value}
486                                       pairs. A single {key,value} in the matchLabels
487                                       map is equivalent to an element of matchExpressions,
488                                       whose key field is "key", the operator is "In",
489                                       and the values array contains only "value".
490                                       The requirements are ANDed.
491                                     type: object
492                               namespaces:
493                                 description: namespaces specifies which namespaces
494                                   the labelSelector applies to (matches against);
495                                   null or empty list means "this pod's namespace"
496                                 items:
497                                   type: string
498                                 type: array
499                               topologyKey:
500                                 description: This pod should be co-located (affinity)
501                                   or not co-located (anti-affinity) with the pods
502                                   matching the labelSelector in the specified namespaces,
503                                   where co-located is defined as running on a node
504                                   whose value of the label with key topologyKey matches
505                                   that of any node on which any of the selected pods
506                                   is running. Empty topologyKey is not allowed.
507                                 type: string
508                             required:
509                             - topologyKey
510                           weight:
511                             description: weight associated with matching the corresponding
512                               podAffinityTerm, in the range 1-100.
513                             format: int32
514                             type: integer
515                         required:
516                         - weight
517                         - podAffinityTerm
518                       type: array
519                     requiredDuringSchedulingIgnoredDuringExecution:
520                       description: If the anti-affinity requirements specified by
521                         this field are not met at scheduling time, the pod will not
522                         be scheduled onto the node. If the anti-affinity requirements
523                         specified by this field cease to be met at some point during
524                         pod execution (e.g. due to a pod label update), the system
525                         may or may not try to eventually evict the pod from its node.
526                         When there are multiple elements, the lists of nodes corresponding
527                         to each podAffinityTerm are intersected, i.e. all terms must
528                         be satisfied.
529                       items:
530                         description: Defines a set of pods (namely those matching
531                           the labelSelector relative to the given namespace(s)) that
532                           this pod should be co-located (affinity) or not co-located
533                           (anti-affinity) with, where co-located is defined as running
534                           on a node whose value of the label with key <topologyKey>
535                           matches that of any node on which a pod of the set of pods
536                           is running
537                         properties:
538                           labelSelector:
539                             description: A label selector is a label query over a
540                               set of resources. The result of matchLabels and matchExpressions
541                               are ANDed. An empty label selector matches all objects.
542                               A null label selector matches no objects.
543                             properties:
544                               matchExpressions:
545                                 description: matchExpressions is a list of label selector
546                                   requirements. The requirements are ANDed.
547                                 items:
548                                   description: A label selector requirement is a selector
549                                     that contains values, a key, and an operator that
550                                     relates the key and values.
551                                   properties:
552                                     key:
553                                       description: key is the label key that the selector
554                                         applies to.
555                                       type: string
556                                     operator:
557                                       description: operator represents a key's relationship
558                                         to a set of values. Valid operators are In,
559                                         NotIn, Exists and DoesNotExist.
560                                       type: string
561                                     values:
562                                       description: values is an array of string values.
563                                         If the operator is In or NotIn, the values
564                                         array must be non-empty. If the operator is
565                                         Exists or DoesNotExist, the values array must
566                                         be empty. This array is replaced during a
567                                         strategic merge patch.
568                                       items:
569                                         type: string
570                                       type: array
571                                   required:
572                                   - key
573                                   - operator
574                                 type: array
575                               matchLabels:
576                                 description: matchLabels is a map of {key,value} pairs.
577                                   A single {key,value} in the matchLabels map is equivalent
578                                   to an element of matchExpressions, whose key field
579                                   is "key", the operator is "In", and the values array
580                                   contains only "value". The requirements are ANDed.
581                                 type: object
582                           namespaces:
583                             description: namespaces specifies which namespaces the
584                               labelSelector applies to (matches against); null or
585                               empty list means "this pod's namespace"
586                             items:
587                               type: string
588                             type: array
589                           topologyKey:
590                             description: This pod should be co-located (affinity)
591                               or not co-located (anti-affinity) with the pods matching
592                               the labelSelector in the specified namespaces, where
593                               co-located is defined as running on a node whose value
594                               of the label with key topologyKey matches that of any
595                               node on which any of the selected pods is running. Empty
596                               topologyKey is not allowed.
597                             type: string
598                         required:
599                         - topologyKey
600                       type: array
601             baseImage:
602               description: Base image that is used to deploy pods, without tag.
603               type: string
604             configMaps:
605               description: ConfigMaps is a list of ConfigMaps in the same namespace
606                 as the Alertmanager object, which shall be mounted into the Alertmanager
607                 Pods. The ConfigMaps are mounted into /etc/alertmanager/configmaps/<configmap-name>.
608               items:
609                 type: string
610               type: array
611             containers:
612               description: Containers allows injecting additional containers. This
613                 is meant to allow adding an authentication proxy to an Alertmanager
614                 pod.
615               items:
616                 description: A single application container that you want to run within
617                   a pod.
618                 properties:
619                   args:
620                     description: 'Arguments to the entrypoint. The docker image''s
621                       CMD is used if this is not provided. Variable references $(VAR_NAME)
622                       are expanded using the container''s environment. If a variable
623                       cannot be resolved, the reference in the input string will be
624                       unchanged. The $(VAR_NAME) syntax can be escaped with a double
625                       $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
626                       regardless of whether the variable exists or not. Cannot be
627                       updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
628                     items:
629                       type: string
630                     type: array
631                   command:
632                     description: 'Entrypoint array. Not executed within a shell. The
633                       docker image''s ENTRYPOINT is used if this is not provided.
634                       Variable references $(VAR_NAME) are expanded using the container''s
635                       environment. If a variable cannot be resolved, the reference
636                       in the input string will be unchanged. The $(VAR_NAME) syntax
637                       can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references
638                       will never be expanded, regardless of whether the variable exists
639                       or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
640                     items:
641                       type: string
642                     type: array
643                   env:
644                     description: List of environment variables to set in the container.
645                       Cannot be updated.
646                     items:
647                       description: EnvVar represents an environment variable present
648                         in a Container.
649                       properties:
650                         name:
651                           description: Name of the environment variable. Must be a
652                             C_IDENTIFIER.
653                           type: string
654                         value:
655                           description: 'Variable references $(VAR_NAME) are expanded
656                             using the previous defined environment variables in the
657                             container and any service environment variables. If a
658                             variable cannot be resolved, the reference in the input
659                             string will be unchanged. The $(VAR_NAME) syntax can be
660                             escaped with a double $$, ie: $$(VAR_NAME). Escaped references
661                             will never be expanded, regardless of whether the variable
662                             exists or not. Defaults to "".'
663                           type: string
664                         valueFrom:
665                           description: EnvVarSource represents a source for the value
666                             of an EnvVar.
667                           properties:
668                             configMapKeyRef:
669                               description: Selects a key from a ConfigMap.
670                               properties:
671                                 key:
672                                   description: The key to select.
673                                   type: string
674                                 name:
675                                   description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
676                                   type: string
677                                 optional:
678                                   description: Specify whether the ConfigMap or it's
679                                     key must be defined
680                                   type: boolean
681                               required:
682                               - key
683                             fieldRef:
684                               description: ObjectFieldSelector selects an APIVersioned
685                                 field of an object.
686                               properties:
687                                 apiVersion:
688                                   description: Version of the schema the FieldPath
689                                     is written in terms of, defaults to "v1".
690                                   type: string
691                                 fieldPath:
692                                   description: Path of the field to select in the
693                                     specified API version.
694                                   type: string
695                               required:
696                               - fieldPath
697                             resourceFieldRef:
698                               description: ResourceFieldSelector represents container
699                                 resources (cpu, memory) and their output format
700                               properties:
701                                 containerName:
702                                   description: 'Container name: required for volumes,
703                                     optional for env vars'
704                                   type: string
705                                 divisor: {}
706                                 resource:
707                                   description: 'Required: resource to select'
708                                   type: string
709                               required:
710                               - resource
711                             secretKeyRef:
712                               description: SecretKeySelector selects a key of a Secret.
713                               properties:
714                                 key:
715                                   description: The key of the secret to select from.  Must
716                                     be a valid secret key.
717                                   type: string
718                                 name:
719                                   description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
720                                   type: string
721                                 optional:
722                                   description: Specify whether the Secret or it's
723                                     key must be defined
724                                   type: boolean
725                               required:
726                               - key
727                       required:
728                       - name
729                     type: array
730                   envFrom:
731                     description: List of sources to populate environment variables
732                       in the container. The keys defined within a source must be a
733                       C_IDENTIFIER. All invalid keys will be reported as an event
734                       when the container is starting. When a key exists in multiple
735                       sources, the value associated with the last source will take
736                       precedence. Values defined by an Env with a duplicate key will
737                       take precedence. Cannot be updated.
738                     items:
739                       description: EnvFromSource represents the source of a set of
740                         ConfigMaps
741                       properties:
742                         configMapRef:
743                           description: |-
744                             ConfigMapEnvSource selects a ConfigMap to populate the environment variables with.
745
746                             The contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables.
747                           properties:
748                             name:
749                               description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
750                               type: string
751                             optional:
752                               description: Specify whether the ConfigMap must be defined
753                               type: boolean
754                         prefix:
755                           description: An optional identifier to prepend to each key
756                             in the ConfigMap. Must be a C_IDENTIFIER.
757                           type: string
758                         secretRef:
759                           description: |-
760                             SecretEnvSource selects a Secret to populate the environment variables with.
761
762                             The contents of the target Secret's Data field will represent the key-value pairs as environment variables.
763                           properties:
764                             name:
765                               description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
766                               type: string
767                             optional:
768                               description: Specify whether the Secret must be defined
769                               type: boolean
770                     type: array
771                   image:
772                     description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images
773                       This field is optional to allow higher level config management
774                       to default or override container images in workload controllers
775                       like Deployments and StatefulSets.'
776                     type: string
777                   imagePullPolicy:
778                     description: 'Image pull policy. One of Always, Never, IfNotPresent.
779                       Defaults to Always if :latest tag is specified, or IfNotPresent
780                       otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images'
781                     type: string
782                   lifecycle:
783                     description: Lifecycle describes actions that the management system
784                       should take in response to container lifecycle events. For the
785                       PostStart and PreStop lifecycle handlers, management of the
786                       container blocks until the action is complete, unless the container
787                       process fails, in which case the handler is aborted.
788                     properties:
789                       postStart:
790                         description: Handler defines a specific action that should
791                           be taken
792                         properties:
793                           exec:
794                             description: ExecAction describes a "run in container"
795                               action.
796                             properties:
797                               command:
798                                 description: Command is the command line to execute
799                                   inside the container, the working directory for
800                                   the command  is root ('/') in the container's filesystem.
801                                   The command is simply exec'd, it is not run inside
802                                   a shell, so traditional shell instructions ('|',
803                                   etc) won't work. To use a shell, you need to explicitly
804                                   call out to that shell. Exit status of 0 is treated
805                                   as live/healthy and non-zero is unhealthy.
806                                 items:
807                                   type: string
808                                 type: array
809                           httpGet:
810                             description: HTTPGetAction describes an action based on
811                               HTTP Get requests.
812                             properties:
813                               host:
814                                 description: Host name to connect to, defaults to
815                                   the pod IP. You probably want to set "Host" in httpHeaders
816                                   instead.
817                                 type: string
818                               httpHeaders:
819                                 description: Custom headers to set in the request.
820                                   HTTP allows repeated headers.
821                                 items:
822                                   description: HTTPHeader describes a custom header
823                                     to be used in HTTP probes
824                                   properties:
825                                     name:
826                                       description: The header field name
827                                       type: string
828                                     value:
829                                       description: The header field value
830                                       type: string
831                                   required:
832                                   - name
833                                   - value
834                                 type: array
835                               path:
836                                 description: Path to access on the HTTP server.
837                                 type: string
838                               port:
839                                 anyOf:
840                                 - type: string
841                                 - type: integer
842                               scheme:
843                                 description: Scheme to use for connecting to the host.
844                                   Defaults to HTTP.
845                                 type: string
846                             required:
847                             - port
848                           tcpSocket:
849                             description: TCPSocketAction describes an action based
850                               on opening a socket
851                             properties:
852                               host:
853                                 description: 'Optional: Host name to connect to, defaults
854                                   to the pod IP.'
855                                 type: string
856                               port:
857                                 anyOf:
858                                 - type: string
859                                 - type: integer
860                             required:
861                             - port
862                       preStop:
863                         description: Handler defines a specific action that should
864                           be taken
865                         properties:
866                           exec:
867                             description: ExecAction describes a "run in container"
868                               action.
869                             properties:
870                               command:
871                                 description: Command is the command line to execute
872                                   inside the container, the working directory for
873                                   the command  is root ('/') in the container's filesystem.
874                                   The command is simply exec'd, it is not run inside
875                                   a shell, so traditional shell instructions ('|',
876                                   etc) won't work. To use a shell, you need to explicitly
877                                   call out to that shell. Exit status of 0 is treated
878                                   as live/healthy and non-zero is unhealthy.
879                                 items:
880                                   type: string
881                                 type: array
882                           httpGet:
883                             description: HTTPGetAction describes an action based on
884                               HTTP Get requests.
885                             properties:
886                               host:
887                                 description: Host name to connect to, defaults to
888                                   the pod IP. You probably want to set "Host" in httpHeaders
889                                   instead.
890                                 type: string
891                               httpHeaders:
892                                 description: Custom headers to set in the request.
893                                   HTTP allows repeated headers.
894                                 items:
895                                   description: HTTPHeader describes a custom header
896                                     to be used in HTTP probes
897                                   properties:
898                                     name:
899                                       description: The header field name
900                                       type: string
901                                     value:
902                                       description: The header field value
903                                       type: string
904                                   required:
905                                   - name
906                                   - value
907                                 type: array
908                               path:
909                                 description: Path to access on the HTTP server.
910                                 type: string
911                               port:
912                                 anyOf:
913                                 - type: string
914                                 - type: integer
915                               scheme:
916                                 description: Scheme to use for connecting to the host.
917                                   Defaults to HTTP.
918                                 type: string
919                             required:
920                             - port
921                           tcpSocket:
922                             description: TCPSocketAction describes an action based
923                               on opening a socket
924                             properties:
925                               host:
926                                 description: 'Optional: Host name to connect to, defaults
927                                   to the pod IP.'
928                                 type: string
929                               port:
930                                 anyOf:
931                                 - type: string
932                                 - type: integer
933                             required:
934                             - port
935                   livenessProbe:
936                     description: Probe describes a health check to be performed against
937                       a container to determine whether it is alive or ready to receive
938                       traffic.
939                     properties:
940                       exec:
941                         description: ExecAction describes a "run in container" action.
942                         properties:
943                           command:
944                             description: Command is the command line to execute inside
945                               the container, the working directory for the command  is
946                               root ('/') in the container's filesystem. The command
947                               is simply exec'd, it is not run inside a shell, so traditional
948                               shell instructions ('|', etc) won't work. To use a shell,
949                               you need to explicitly call out to that shell. Exit
950                               status of 0 is treated as live/healthy and non-zero
951                               is unhealthy.
952                             items:
953                               type: string
954                             type: array
955                       failureThreshold:
956                         description: Minimum consecutive failures for the probe to
957                           be considered failed after having succeeded. Defaults to
958                           3. Minimum value is 1.
959                         format: int32
960                         type: integer
961                       httpGet:
962                         description: HTTPGetAction describes an action based on HTTP
963                           Get requests.
964                         properties:
965                           host:
966                             description: Host name to connect to, defaults to the
967                               pod IP. You probably want to set "Host" in httpHeaders
968                               instead.
969                             type: string
970                           httpHeaders:
971                             description: Custom headers to set in the request. HTTP
972                               allows repeated headers.
973                             items:
974                               description: HTTPHeader describes a custom header to
975                                 be used in HTTP probes
976                               properties:
977                                 name:
978                                   description: The header field name
979                                   type: string
980                                 value:
981                                   description: The header field value
982                                   type: string
983                               required:
984                               - name
985                               - value
986                             type: array
987                           path:
988                             description: Path to access on the HTTP server.
989                             type: string
990                           port:
991                             anyOf:
992                             - type: string
993                             - type: integer
994                           scheme:
995                             description: Scheme to use for connecting to the host.
996                               Defaults to HTTP.
997                             type: string
998                         required:
999                         - port
1000                       initialDelaySeconds:
1001                         description: 'Number of seconds after the container has started
1002                           before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
1003                         format: int32
1004                         type: integer
1005                       periodSeconds:
1006                         description: How often (in seconds) to perform the probe.
1007                           Default to 10 seconds. Minimum value is 1.
1008                         format: int32
1009                         type: integer
1010                       successThreshold:
1011                         description: Minimum consecutive successes for the probe to
1012                           be considered successful after having failed. Defaults to
1013                           1. Must be 1 for liveness. Minimum value is 1.
1014                         format: int32
1015                         type: integer
1016                       tcpSocket:
1017                         description: TCPSocketAction describes an action based on
1018                           opening a socket
1019                         properties:
1020                           host:
1021                             description: 'Optional: Host name to connect to, defaults
1022                               to the pod IP.'
1023                             type: string
1024                           port:
1025                             anyOf:
1026                             - type: string
1027                             - type: integer
1028                         required:
1029                         - port
1030                       timeoutSeconds:
1031                         description: 'Number of seconds after which the probe times
1032                           out. Defaults to 1 second. Minimum value is 1. More info:
1033                           https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
1034                         format: int32
1035                         type: integer
1036                   name:
1037                     description: Name of the container specified as a DNS_LABEL. Each
1038                       container in a pod must have a unique name (DNS_LABEL). Cannot
1039                       be updated.
1040                     type: string
1041                   ports:
1042                     description: List of ports to expose from the container. Exposing
1043                       a port here gives the system additional information about the
1044                       network connections a container uses, but is primarily informational.
1045                       Not specifying a port here DOES NOT prevent that port from being
1046                       exposed. Any port which is listening on the default "0.0.0.0"
1047                       address inside a container will be accessible from the network.
1048                       Cannot be updated.
1049                     items:
1050                       description: ContainerPort represents a network port in a single
1051                         container.
1052                       properties:
1053                         containerPort:
1054                           description: Number of port to expose on the pod's IP address.
1055                             This must be a valid port number, 0 < x < 65536.
1056                           format: int32
1057                           type: integer
1058                         hostIP:
1059                           description: What host IP to bind the external port to.
1060                           type: string
1061                         hostPort:
1062                           description: Number of port to expose on the host. If specified,
1063                             this must be a valid port number, 0 < x < 65536. If HostNetwork
1064                             is specified, this must match ContainerPort. Most containers
1065                             do not need this.
1066                           format: int32
1067                           type: integer
1068                         name:
1069                           description: If specified, this must be an IANA_SVC_NAME
1070                             and unique within the pod. Each named port in a pod must
1071                             have a unique name. Name for the port that can be referred
1072                             to by services.
1073                           type: string
1074                         protocol:
1075                           description: Protocol for port. Must be UDP, TCP, or SCTP.
1076                             Defaults to "TCP".
1077                           type: string
1078                       required:
1079                       - containerPort
1080                     type: array
1081                   readinessProbe:
1082                     description: Probe describes a health check to be performed against
1083                       a container to determine whether it is alive or ready to receive
1084                       traffic.
1085                     properties:
1086                       exec:
1087                         description: ExecAction describes a "run in container" action.
1088                         properties:
1089                           command:
1090                             description: Command is the command line to execute inside
1091                               the container, the working directory for the command  is
1092                               root ('/') in the container's filesystem. The command
1093                               is simply exec'd, it is not run inside a shell, so traditional
1094                               shell instructions ('|', etc) won't work. To use a shell,
1095                               you need to explicitly call out to that shell. Exit
1096                               status of 0 is treated as live/healthy and non-zero
1097                               is unhealthy.
1098                             items:
1099                               type: string
1100                             type: array
1101                       failureThreshold:
1102                         description: Minimum consecutive failures for the probe to
1103                           be considered failed after having succeeded. Defaults to
1104                           3. Minimum value is 1.
1105                         format: int32
1106                         type: integer
1107                       httpGet:
1108                         description: HTTPGetAction describes an action based on HTTP
1109                           Get requests.
1110                         properties:
1111                           host:
1112                             description: Host name to connect to, defaults to the
1113                               pod IP. You probably want to set "Host" in httpHeaders
1114                               instead.
1115                             type: string
1116                           httpHeaders:
1117                             description: Custom headers to set in the request. HTTP
1118                               allows repeated headers.
1119                             items:
1120                               description: HTTPHeader describes a custom header to
1121                                 be used in HTTP probes
1122                               properties:
1123                                 name:
1124                                   description: The header field name
1125                                   type: string
1126                                 value:
1127                                   description: The header field value
1128                                   type: string
1129                               required:
1130                               - name
1131                               - value
1132                             type: array
1133                           path:
1134                             description: Path to access on the HTTP server.
1135                             type: string
1136                           port:
1137                             anyOf:
1138                             - type: string
1139                             - type: integer
1140                           scheme:
1141                             description: Scheme to use for connecting to the host.
1142                               Defaults to HTTP.
1143                             type: string
1144                         required:
1145                         - port
1146                       initialDelaySeconds:
1147                         description: 'Number of seconds after the container has started
1148                           before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
1149                         format: int32
1150                         type: integer
1151                       periodSeconds:
1152                         description: How often (in seconds) to perform the probe.
1153                           Default to 10 seconds. Minimum value is 1.
1154                         format: int32
1155                         type: integer
1156                       successThreshold:
1157                         description: Minimum consecutive successes for the probe to
1158                           be considered successful after having failed. Defaults to
1159                           1. Must be 1 for liveness. Minimum value is 1.
1160                         format: int32
1161                         type: integer
1162                       tcpSocket:
1163                         description: TCPSocketAction describes an action based on
1164                           opening a socket
1165                         properties:
1166                           host:
1167                             description: 'Optional: Host name to connect to, defaults
1168                               to the pod IP.'
1169                             type: string
1170                           port:
1171                             anyOf:
1172                             - type: string
1173                             - type: integer
1174                         required:
1175                         - port
1176                       timeoutSeconds:
1177                         description: 'Number of seconds after which the probe times
1178                           out. Defaults to 1 second. Minimum value is 1. More info:
1179                           https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
1180                         format: int32
1181                         type: integer
1182                   resources:
1183                     description: ResourceRequirements describes the compute resource
1184                       requirements.
1185                     properties:
1186                       limits:
1187                         description: 'Limits describes the maximum amount of compute
1188                           resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
1189                         type: object
1190                       requests:
1191                         description: 'Requests describes the minimum amount of compute
1192                           resources required. If Requests is omitted for a container,
1193                           it defaults to Limits if that is explicitly specified, otherwise
1194                           to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
1195                         type: object
1196                   securityContext:
1197                     description: SecurityContext holds security configuration that
1198                       will be applied to a container. Some fields are present in both
1199                       SecurityContext and PodSecurityContext.  When both are set,
1200                       the values in SecurityContext take precedence.
1201                     properties:
1202                       allowPrivilegeEscalation:
1203                         description: 'AllowPrivilegeEscalation controls whether a
1204                           process can gain more privileges than its parent process.
1205                           This bool directly controls if the no_new_privs flag will
1206                           be set on the container process. AllowPrivilegeEscalation
1207                           is true always when the container is: 1) run as Privileged
1208                           2) has CAP_SYS_ADMIN'
1209                         type: boolean
1210                       capabilities:
1211                         description: Adds and removes POSIX capabilities from running
1212                           containers.
1213                         properties:
1214                           add:
1215                             description: Added capabilities
1216                             items:
1217                               type: string
1218                             type: array
1219                           drop:
1220                             description: Removed capabilities
1221                             items:
1222                               type: string
1223                             type: array
1224                       privileged:
1225                         description: Run container in privileged mode. Processes in
1226                           privileged containers are essentially equivalent to root
1227                           on the host. Defaults to false.
1228                         type: boolean
1229                       procMount:
1230                         description: procMount denotes the type of proc mount to use
1231                           for the containers. The default is DefaultProcMount which
1232                           uses the container runtime defaults for readonly paths and
1233                           masked paths. This requires the ProcMountType feature flag
1234                           to be enabled.
1235                         type: string
1236                       readOnlyRootFilesystem:
1237                         description: Whether this container has a read-only root filesystem.
1238                           Default is false.
1239                         type: boolean
1240                       runAsGroup:
1241                         description: The GID to run the entrypoint of the container
1242                           process. Uses runtime default if unset. May also be set
1243                           in PodSecurityContext.  If set in both SecurityContext and
1244                           PodSecurityContext, the value specified in SecurityContext
1245                           takes precedence.
1246                         format: int64
1247                         type: integer
1248                       runAsNonRoot:
1249                         description: Indicates that the container must run as a non-root
1250                           user. If true, the Kubelet will validate the image at runtime
1251                           to ensure that it does not run as UID 0 (root) and fail
1252                           to start the container if it does. If unset or false, no
1253                           such validation will be performed. May also be set in PodSecurityContext.  If
1254                           set in both SecurityContext and PodSecurityContext, the
1255                           value specified in SecurityContext takes precedence.
1256                         type: boolean
1257                       runAsUser:
1258                         description: The UID to run the entrypoint of the container
1259                           process. Defaults to user specified in image metadata if
1260                           unspecified. May also be set in PodSecurityContext.  If
1261                           set in both SecurityContext and PodSecurityContext, the
1262                           value specified in SecurityContext takes precedence.
1263                         format: int64
1264                         type: integer
1265                       seLinuxOptions:
1266                         description: SELinuxOptions are the labels to be applied to
1267                           the container
1268                         properties:
1269                           level:
1270                             description: Level is SELinux level label that applies
1271                               to the container.
1272                             type: string
1273                           role:
1274                             description: Role is a SELinux role label that applies
1275                               to the container.
1276                             type: string
1277                           type:
1278                             description: Type is a SELinux type label that applies
1279                               to the container.
1280                             type: string
1281                           user:
1282                             description: User is a SELinux user label that applies
1283                               to the container.
1284                             type: string
1285                   stdin:
1286                     description: Whether this container should allocate a buffer for
1287                       stdin in the container runtime. If this is not set, reads from
1288                       stdin in the container will always result in EOF. Default is
1289                       false.
1290                     type: boolean
1291                   stdinOnce:
1292                     description: Whether the container runtime should close the stdin
1293                       channel after it has been opened by a single attach. When stdin
1294                       is true the stdin stream will remain open across multiple attach
1295                       sessions. If stdinOnce is set to true, stdin is opened on container
1296                       start, is empty until the first client attaches to stdin, and
1297                       then remains open and accepts data until the client disconnects,
1298                       at which time stdin is closed and remains closed until the container
1299                       is restarted. If this flag is false, a container processes that
1300                       reads from stdin will never receive an EOF. Default is false
1301                     type: boolean
1302                   terminationMessagePath:
1303                     description: 'Optional: Path at which the file to which the container''s
1304                       termination message will be written is mounted into the container''s
1305                       filesystem. Message written is intended to be brief final status,
1306                       such as an assertion failure message. Will be truncated by the
1307                       node if greater than 4096 bytes. The total message length across
1308                       all containers will be limited to 12kb. Defaults to /dev/termination-log.
1309                       Cannot be updated.'
1310                     type: string
1311                   terminationMessagePolicy:
1312                     description: Indicate how the termination message should be populated.
1313                       File will use the contents of terminationMessagePath to populate
1314                       the container status message on both success and failure. FallbackToLogsOnError
1315                       will use the last chunk of container log output if the termination
1316                       message file is empty and the container exited with an error.
1317                       The log output is limited to 2048 bytes or 80 lines, whichever
1318                       is smaller. Defaults to File. Cannot be updated.
1319                     type: string
1320                   tty:
1321                     description: Whether this container should allocate a TTY for
1322                       itself, also requires 'stdin' to be true. Default is false.
1323                     type: boolean
1324                   volumeDevices:
1325                     description: volumeDevices is the list of block devices to be
1326                       used by the container. This is an alpha feature and may change
1327                       in the future.
1328                     items:
1329                       description: volumeDevice describes a mapping of a raw block
1330                         device within a container.
1331                       properties:
1332                         devicePath:
1333                           description: devicePath is the path inside of the container
1334                             that the device will be mapped to.
1335                           type: string
1336                         name:
1337                           description: name must match the name of a persistentVolumeClaim
1338                             in the pod
1339                           type: string
1340                       required:
1341                       - name
1342                       - devicePath
1343                     type: array
1344                   volumeMounts:
1345                     description: Pod volumes to mount into the container's filesystem.
1346                       Cannot be updated.
1347                     items:
1348                       description: VolumeMount describes a mounting of a Volume within
1349                         a container.
1350                       properties:
1351                         mountPath:
1352                           description: Path within the container at which the volume
1353                             should be mounted.  Must not contain ':'.
1354                           type: string
1355                         mountPropagation:
1356                           description: mountPropagation determines how mounts are
1357                             propagated from the host to container and the other way
1358                             around. When not set, MountPropagationNone is used. This
1359                             field is beta in 1.10.
1360                           type: string
1361                         name:
1362                           description: This must match the Name of a Volume.
1363                           type: string
1364                         readOnly:
1365                           description: Mounted read-only if true, read-write otherwise
1366                             (false or unspecified). Defaults to false.
1367                           type: boolean
1368                         subPath:
1369                           description: Path within the volume from which the container's
1370                             volume should be mounted. Defaults to "" (volume's root).
1371                           type: string
1372                       required:
1373                       - name
1374                       - mountPath
1375                     type: array
1376                   workingDir:
1377                     description: Container's working directory. If not specified,
1378                       the container runtime's default will be used, which might be
1379                       configured in the container image. Cannot be updated.
1380                     type: string
1381                 required:
1382                 - name
1383               type: array
1384             externalUrl:
1385               description: The external URL the Alertmanager instances will be available
1386                 under. This is necessary to generate correct URLs. This is necessary
1387                 if Alertmanager is not served from root of a DNS name.
1388               type: string
1389             imagePullSecrets:
1390               description: An optional list of references to secrets in the same namespace
1391                 to use for pulling prometheus and alertmanager images from registries
1392                 see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
1393               items:
1394                 description: LocalObjectReference contains enough information to let
1395                   you locate the referenced object inside the same namespace.
1396                 properties:
1397                   name:
1398                     description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
1399                     type: string
1400               type: array
1401             listenLocal:
1402               description: ListenLocal makes the Alertmanager server listen on loopback,
1403                 so that it does not bind against the Pod IP. Note this is only for
1404                 the Alertmanager UI, not the gossip communication.
1405               type: boolean
1406             logLevel:
1407               description: Log level for Alertmanager to be configured with.
1408               type: string
1409             nodeSelector:
1410               description: Define which Nodes the Pods are scheduled on.
1411               type: object
1412             paused:
1413               description: If set to true all actions on the underlaying managed objects
1414                 are not goint to be performed, except for delete actions.
1415               type: boolean
1416             podMetadata:
1417               description: ObjectMeta is metadata that all persisted resources must
1418                 have, which includes all objects users must create.
1419               properties:
1420                 annotations:
1421                   description: 'Annotations is an unstructured key value map stored
1422                     with a resource that may be set by external tools to store and
1423                     retrieve arbitrary metadata. They are not queryable and should
1424                     be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
1425                   type: object
1426                 clusterName:
1427                   description: The name of the cluster which the object belongs to.
1428                     This is used to distinguish resources with same name and namespace
1429                     in different clusters. This field is not set anywhere right now
1430                     and apiserver is going to ignore it if set in create or update
1431                     request.
1432                   type: string
1433                 creationTimestamp:
1434                   description: Time is a wrapper around time.Time which supports correct
1435                     marshaling to YAML and JSON.  Wrappers are provided for many of
1436                     the factory methods that the time package offers.
1437                   format: date-time
1438                   type: string
1439                 deletionGracePeriodSeconds:
1440                   description: Number of seconds allowed for this object to gracefully
1441                     terminate before it will be removed from the system. Only set
1442                     when deletionTimestamp is also set. May only be shortened. Read-only.
1443                   format: int64
1444                   type: integer
1445                 deletionTimestamp:
1446                   description: Time is a wrapper around time.Time which supports correct
1447                     marshaling to YAML and JSON.  Wrappers are provided for many of
1448                     the factory methods that the time package offers.
1449                   format: date-time
1450                   type: string
1451                 finalizers:
1452                   description: Must be empty before the object is deleted from the
1453                     registry. Each entry is an identifier for the responsible component
1454                     that will remove the entry from the list. If the deletionTimestamp
1455                     of the object is non-nil, entries in this list can only be removed.
1456                   items:
1457                     type: string
1458                   type: array
1459                 generateName:
1460                   description: |-
1461                     GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
1462
1463                     If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).
1464
1465                     Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
1466                   type: string
1467                 generation:
1468                   description: A sequence number representing a specific generation
1469                     of the desired state. Populated by the system. Read-only.
1470                   format: int64
1471                   type: integer
1472                 initializers:
1473                   description: Initializers tracks the progress of initialization.
1474                   properties:
1475                     pending:
1476                       description: Pending is a list of initializers that must execute
1477                         in order before this object is visible. When the last pending
1478                         initializer is removed, and no failing result is set, the
1479                         initializers struct will be set to nil and the object is considered
1480                         as initialized and visible to all clients.
1481                       items:
1482                         description: Initializer is information about an initializer
1483                           that has not yet completed.
1484                         properties:
1485                           name:
1486                             description: name of the process that is responsible for
1487                               initializing this object.
1488                             type: string
1489                         required:
1490                         - name
1491                       type: array
1492                     result:
1493                       description: Status is a return value for calls that don't return
1494                         other objects.
1495                       properties:
1496                         apiVersion:
1497                           description: 'APIVersion defines the versioned schema of
1498                             this representation of an object. Servers should convert
1499                             recognized schemas to the latest internal value, and may
1500                             reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
1501                           type: string
1502                         code:
1503                           description: Suggested HTTP return code for this status,
1504                             0 if not set.
1505                           format: int32
1506                           type: integer
1507                         details:
1508                           description: StatusDetails is a set of additional properties
1509                             that MAY be set by the server to provide additional information
1510                             about a response. The Reason field of a Status object
1511                             defines what attributes will be set. Clients must ignore
1512                             fields that do not match the defined type of each attribute,
1513                             and should assume that any attribute may be empty, invalid,
1514                             or under defined.
1515                           properties:
1516                             causes:
1517                               description: The Causes array includes more details
1518                                 associated with the StatusReason failure. Not all
1519                                 StatusReasons may provide detailed causes.
1520                               items:
1521                                 description: StatusCause provides more information
1522                                   about an api.Status failure, including cases when
1523                                   multiple errors are encountered.
1524                                 properties:
1525                                   field:
1526                                     description: |-
1527                                       The field of the resource that has caused this error, as named by its JSON serialization. May include dot and postfix notation for nested attributes. Arrays are zero-indexed.  Fields may appear more than once in an array of causes due to fields having multiple errors. Optional.
1528
1529                                       Examples:
1530                                         "name" - the field "name" on the current resource
1531                                         "items[0].name" - the field "name" on the first array entry in "items"
1532                                     type: string
1533                                   message:
1534                                     description: A human-readable description of the
1535                                       cause of the error.  This field may be presented
1536                                       as-is to a reader.
1537                                     type: string
1538                                   reason:
1539                                     description: A machine-readable description of
1540                                       the cause of the error. If this value is empty
1541                                       there is no information available.
1542                                     type: string
1543                               type: array
1544                             group:
1545                               description: The group attribute of the resource associated
1546                                 with the status StatusReason.
1547                               type: string
1548                             kind:
1549                               description: 'The kind attribute of the resource associated
1550                                 with the status StatusReason. On some operations may
1551                                 differ from the requested resource Kind. More info:
1552                                 https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
1553                               type: string
1554                             name:
1555                               description: The name attribute of the resource associated
1556                                 with the status StatusReason (when there is a single
1557                                 name which can be described).
1558                               type: string
1559                             retryAfterSeconds:
1560                               description: If specified, the time in seconds before
1561                                 the operation should be retried. Some errors may indicate
1562                                 the client must take an alternate action - for those
1563                                 errors this field may indicate how long to wait before
1564                                 taking the alternate action.
1565                               format: int32
1566                               type: integer
1567                             uid:
1568                               description: 'UID of the resource. (when there is a
1569                                 single resource which can be described). More info:
1570                                 http://kubernetes.io/docs/user-guide/identifiers#uids'
1571                               type: string
1572                         kind:
1573                           description: 'Kind is a string value representing the REST
1574                             resource this object represents. Servers may infer this
1575                             from the endpoint the client submits requests to. Cannot
1576                             be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
1577                           type: string
1578                         message:
1579                           description: A human-readable description of the status
1580                             of this operation.
1581                           type: string
1582                         metadata:
1583                           description: ListMeta describes metadata that synthetic
1584                             resources must have, including lists and various status
1585                             objects. A resource may have only one of {ObjectMeta,
1586                             ListMeta}.
1587                           properties:
1588                             continue:
1589                               description: continue may be set if the user set a limit
1590                                 on the number of items returned, and indicates that
1591                                 the server has more data available. The value is opaque
1592                                 and may be used to issue another request to the endpoint
1593                                 that served this list to retrieve the next set of
1594                                 available objects. Continuing a consistent list may
1595                                 not be possible if the server configuration has changed
1596                                 or more than a few minutes have passed. The resourceVersion
1597                                 field returned when using this continue value will
1598                                 be identical to the value in the first response, unless
1599                                 you have received this token from an error message.
1600                               type: string
1601                             resourceVersion:
1602                               description: 'String that identifies the server''s internal
1603                                 version of this object that can be used by clients
1604                                 to determine when objects have changed. Value must
1605                                 be treated as opaque by clients and passed unmodified
1606                                 back to the server. Populated by the system. Read-only.
1607                                 More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency'
1608                               type: string
1609                             selfLink:
1610                               description: selfLink is a URL representing this object.
1611                                 Populated by the system. Read-only.
1612                               type: string
1613                         reason:
1614                           description: A machine-readable description of why this
1615                             operation is in the "Failure" status. If this value is
1616                             empty there is no information available. A Reason clarifies
1617                             an HTTP status code but does not override it.
1618                           type: string
1619                         status:
1620                           description: 'Status of the operation. One of: "Success"
1621                             or "Failure". More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status'
1622                           type: string
1623                   required:
1624                   - pending
1625                 labels:
1626                   description: 'Map of string keys and values that can be used to
1627                     organize and categorize (scope and select) objects. May match
1628                     selectors of replication controllers and services. More info:
1629                     http://kubernetes.io/docs/user-guide/labels'
1630                   type: object
1631                 name:
1632                   description: 'Name must be unique within a namespace. Is required
1633                     when creating resources, although some resources may allow a client
1634                     to request the generation of an appropriate name automatically.
1635                     Name is primarily intended for creation idempotence and configuration
1636                     definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names'
1637                   type: string
1638                 namespace:
1639                   description: |-
1640                     Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
1641
1642                     Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
1643                   type: string
1644                 ownerReferences:
1645                   description: List of objects depended by this object. If ALL objects
1646                     in the list have been deleted, this object will be garbage collected.
1647                     If this object is managed by a controller, then an entry in this
1648                     list will point to this controller, with the controller field
1649                     set to true. There cannot be more than one managing controller.
1650                   items:
1651                     description: OwnerReference contains enough information to let
1652                       you identify an owning object. Currently, an owning object must
1653                       be in the same namespace, so there is no namespace field.
1654                     properties:
1655                       apiVersion:
1656                         description: API version of the referent.
1657                         type: string
1658                       blockOwnerDeletion:
1659                         description: If true, AND if the owner has the "foregroundDeletion"
1660                           finalizer, then the owner cannot be deleted from the key-value
1661                           store until this reference is removed. Defaults to false.
1662                           To set this field, a user needs "delete" permission of the
1663                           owner, otherwise 422 (Unprocessable Entity) will be returned.
1664                         type: boolean
1665                       controller:
1666                         description: If true, this reference points to the managing
1667                           controller.
1668                         type: boolean
1669                       kind:
1670                         description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
1671                         type: string
1672                       name:
1673                         description: 'Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names'
1674                         type: string
1675                       uid:
1676                         description: 'UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids'
1677                         type: string
1678                     required:
1679                     - apiVersion
1680                     - kind
1681                     - name
1682                     - uid
1683                   type: array
1684                 resourceVersion:
1685                   description: |-
1686                     An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.
1687
1688                     Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
1689                   type: string
1690                 selfLink:
1691                   description: SelfLink is a URL representing this object. Populated
1692                     by the system. Read-only.
1693                   type: string
1694                 uid:
1695                   description: |-
1696                     UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
1697
1698                     Populated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids
1699                   type: string
1700             priorityClassName:
1701               description: Priority class assigned to the Pods
1702               type: string
1703             replicas:
1704               description: Size is the expected size of the alertmanager cluster.
1705                 The controller will eventually make the size of the running cluster
1706                 equal to the expected size.
1707               format: int32
1708               type: integer
1709             resources:
1710               description: ResourceRequirements describes the compute resource requirements.
1711               properties:
1712                 limits:
1713                   description: 'Limits describes the maximum amount of compute resources
1714                     allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
1715                   type: object
1716                 requests:
1717                   description: 'Requests describes the minimum amount of compute resources
1718                     required. If Requests is omitted for a container, it defaults
1719                     to Limits if that is explicitly specified, otherwise to an implementation-defined
1720                     value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
1721                   type: object
1722             retention:
1723               description: Time duration Alertmanager shall retain data for. Default
1724                 is '120h', and must match the regular expression `[0-9]+(ms|s|m|h|d|w|y)`
1725                 (milliseconds seconds minutes hours days weeks years).
1726               type: string
1727             routePrefix:
1728               description: The route prefix Alertmanager registers HTTP handlers for.
1729                 This is useful, if using ExternalURL and a proxy is rewriting HTTP
1730                 routes of a request, and the actual ExternalURL is still true, but
1731                 the server serves requests under a different route prefix. For example
1732                 for use with `kubectl proxy`.
1733               type: string
1734             secrets:
1735               description: Secrets is a list of Secrets in the same namespace as the
1736                 Alertmanager object, which shall be mounted into the Alertmanager
1737                 Pods. The Secrets are mounted into /etc/alertmanager/secrets/<secret-name>.
1738               items:
1739                 type: string
1740               type: array
1741             securityContext:
1742               description: PodSecurityContext holds pod-level security attributes
1743                 and common container settings. Some fields are also present in container.securityContext.  Field
1744                 values of container.securityContext take precedence over field values
1745                 of PodSecurityContext.
1746               properties:
1747                 fsGroup:
1748                   description: |-
1749                     A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod:
1750
1751                     1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw----
1752
1753                     If unset, the Kubelet will not modify the ownership and permissions of any volume.
1754                   format: int64
1755                   type: integer
1756                 runAsGroup:
1757                   description: The GID to run the entrypoint of the container process.
1758                     Uses runtime default if unset. May also be set in SecurityContext.  If
1759                     set in both SecurityContext and PodSecurityContext, the value
1760                     specified in SecurityContext takes precedence for that container.
1761                   format: int64
1762                   type: integer
1763                 runAsNonRoot:
1764                   description: Indicates that the container must run as a non-root
1765                     user. If true, the Kubelet will validate the image at runtime
1766                     to ensure that it does not run as UID 0 (root) and fail to start
1767                     the container if it does. If unset or false, no such validation
1768                     will be performed. May also be set in SecurityContext.  If set
1769                     in both SecurityContext and PodSecurityContext, the value specified
1770                     in SecurityContext takes precedence.
1771                   type: boolean
1772                 runAsUser:
1773                   description: The UID to run the entrypoint of the container process.
1774                     Defaults to user specified in image metadata if unspecified. May
1775                     also be set in SecurityContext.  If set in both SecurityContext
1776                     and PodSecurityContext, the value specified in SecurityContext
1777                     takes precedence for that container.
1778                   format: int64
1779                   type: integer
1780                 seLinuxOptions:
1781                   description: SELinuxOptions are the labels to be applied to the
1782                     container
1783                   properties:
1784                     level:
1785                       description: Level is SELinux level label that applies to the
1786                         container.
1787                       type: string
1788                     role:
1789                       description: Role is a SELinux role label that applies to the
1790                         container.
1791                       type: string
1792                     type:
1793                       description: Type is a SELinux type label that applies to the
1794                         container.
1795                       type: string
1796                     user:
1797                       description: User is a SELinux user label that applies to the
1798                         container.
1799                       type: string
1800                 supplementalGroups:
1801                   description: A list of groups applied to the first process run in
1802                     each container, in addition to the container's primary GID.  If
1803                     unspecified, no groups will be added to any container.
1804                   items:
1805                     format: int64
1806                     type: integer
1807                   type: array
1808                 sysctls:
1809                   description: Sysctls hold a list of namespaced sysctls used for
1810                     the pod. Pods with unsupported sysctls (by the container runtime)
1811                     might fail to launch.
1812                   items:
1813                     description: Sysctl defines a kernel parameter to be set
1814                     properties:
1815                       name:
1816                         description: Name of a property to set
1817                         type: string
1818                       value:
1819                         description: Value of a property to set
1820                         type: string
1821                     required:
1822                     - name
1823                     - value
1824                   type: array
1825             serviceAccountName:
1826               description: ServiceAccountName is the name of the ServiceAccount to
1827                 use to run the Prometheus Pods.
1828               type: string
1829             sha:
1830               description: SHA of Alertmanager container image to be deployed. Defaults
1831                 to the value of `version`. Similar to a tag, but the SHA explicitly
1832                 deploys an immutable container image. Version and Tag are ignored
1833                 if SHA is set.
1834               type: string
1835             storage:
1836               description: StorageSpec defines the configured storage for a group
1837                 Prometheus servers. If neither `emptyDir` nor `volumeClaimTemplate`
1838                 is specified, then by default an [EmptyDir](https://kubernetes.io/docs/concepts/storage/volumes/#emptydir)
1839                 will be used.
1840               properties:
1841                 class:
1842                   description: 'Name of the StorageClass to use when requesting storage
1843                     provisioning. More info: https://kubernetes.io/docs/user-guide/persistent-volumes/#storageclasses
1844                     (DEPRECATED - instead use `volumeClaimTemplate.spec.storageClassName`)'
1845                   type: string
1846                 emptyDir:
1847                   description: Represents an empty directory for a pod. Empty directory
1848                     volumes support ownership management and SELinux relabeling.
1849                   properties:
1850                     medium:
1851                       description: 'What type of storage medium should back this directory.
1852                         The default is "" which means to use the node''s default medium.
1853                         Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
1854                       type: string
1855                     sizeLimit: {}
1856                 resources:
1857                   description: ResourceRequirements describes the compute resource
1858                     requirements.
1859                   properties:
1860                     limits:
1861                       description: 'Limits describes the maximum amount of compute
1862                         resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
1863                       type: object
1864                     requests:
1865                       description: 'Requests describes the minimum amount of compute
1866                         resources required. If Requests is omitted for a container,
1867                         it defaults to Limits if that is explicitly specified, otherwise
1868                         to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
1869                       type: object
1870                 selector:
1871                   description: A label selector is a label query over a set of resources.
1872                     The result of matchLabels and matchExpressions are ANDed. An empty
1873                     label selector matches all objects. A null label selector matches
1874                     no objects.
1875                   properties:
1876                     matchExpressions:
1877                       description: matchExpressions is a list of label selector requirements.
1878                         The requirements are ANDed.
1879                       items:
1880                         description: A label selector requirement is a selector that
1881                           contains values, a key, and an operator that relates the
1882                           key and values.
1883                         properties:
1884                           key:
1885                             description: key is the label key that the selector applies
1886                               to.
1887                             type: string
1888                           operator:
1889                             description: operator represents a key's relationship
1890                               to a set of values. Valid operators are In, NotIn, Exists
1891                               and DoesNotExist.
1892                             type: string
1893                           values:
1894                             description: values is an array of string values. If the
1895                               operator is In or NotIn, the values array must be non-empty.
1896                               If the operator is Exists or DoesNotExist, the values
1897                               array must be empty. This array is replaced during a
1898                               strategic merge patch.
1899                             items:
1900                               type: string
1901                             type: array
1902                         required:
1903                         - key
1904                         - operator
1905                       type: array
1906                     matchLabels:
1907                       description: matchLabels is a map of {key,value} pairs. A single
1908                         {key,value} in the matchLabels map is equivalent to an element
1909                         of matchExpressions, whose key field is "key", the operator
1910                         is "In", and the values array contains only "value". The requirements
1911                         are ANDed.
1912                       type: object
1913                 volumeClaimTemplate:
1914                   description: PersistentVolumeClaim is a user's request for and claim
1915                     to a persistent volume
1916                   properties:
1917                     apiVersion:
1918                       description: 'APIVersion defines the versioned schema of this
1919                         representation of an object. Servers should convert recognized
1920                         schemas to the latest internal value, and may reject unrecognized
1921                         values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
1922                       type: string
1923                     kind:
1924                       description: 'Kind is a string value representing the REST resource
1925                         this object represents. Servers may infer this from the endpoint
1926                         the client submits requests to. Cannot be updated. In CamelCase.
1927                         More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
1928                       type: string
1929                     metadata:
1930                       description: ObjectMeta is metadata that all persisted resources
1931                         must have, which includes all objects users must create.
1932                       properties:
1933                         annotations:
1934                           description: 'Annotations is an unstructured key value map
1935                             stored with a resource that may be set by external tools
1936                             to store and retrieve arbitrary metadata. They are not
1937                             queryable and should be preserved when modifying objects.
1938                             More info: http://kubernetes.io/docs/user-guide/annotations'
1939                           type: object
1940                         clusterName:
1941                           description: The name of the cluster which the object belongs
1942                             to. This is used to distinguish resources with same name
1943                             and namespace in different clusters. This field is not
1944                             set anywhere right now and apiserver is going to ignore
1945                             it if set in create or update request.
1946                           type: string
1947                         creationTimestamp:
1948                           description: Time is a wrapper around time.Time which supports
1949                             correct marshaling to YAML and JSON.  Wrappers are provided
1950                             for many of the factory methods that the time package
1951                             offers.
1952                           format: date-time
1953                           type: string
1954                         deletionGracePeriodSeconds:
1955                           description: Number of seconds allowed for this object to
1956                             gracefully terminate before it will be removed from the
1957                             system. Only set when deletionTimestamp is also set. May
1958                             only be shortened. Read-only.
1959                           format: int64
1960                           type: integer
1961                         deletionTimestamp:
1962                           description: Time is a wrapper around time.Time which supports
1963                             correct marshaling to YAML and JSON.  Wrappers are provided
1964                             for many of the factory methods that the time package
1965                             offers.
1966                           format: date-time
1967                           type: string
1968                         finalizers:
1969                           description: Must be empty before the object is deleted
1970                             from the registry. Each entry is an identifier for the
1971                             responsible component that will remove the entry from
1972                             the list. If the deletionTimestamp of the object is non-nil,
1973                             entries in this list can only be removed.
1974                           items:
1975                             type: string
1976                           type: array
1977                         generateName:
1978                           description: |-
1979                             GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
1980
1981                             If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).
1982
1983                             Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
1984                           type: string
1985                         generation:
1986                           description: A sequence number representing a specific generation
1987                             of the desired state. Populated by the system. Read-only.
1988                           format: int64
1989                           type: integer
1990                         initializers:
1991                           description: Initializers tracks the progress of initialization.
1992                           properties:
1993                             pending:
1994                               description: Pending is a list of initializers that
1995                                 must execute in order before this object is visible.
1996                                 When the last pending initializer is removed, and
1997                                 no failing result is set, the initializers struct
1998                                 will be set to nil and the object is considered as
1999                                 initialized and visible to all clients.
2000                               items:
2001                                 description: Initializer is information about an initializer
2002                                   that has not yet completed.
2003                                 properties:
2004                                   name:
2005                                     description: name of the process that is responsible
2006                                       for initializing this object.
2007                                     type: string
2008                                 required:
2009                                 - name
2010                               type: array
2011                             result:
2012                               description: Status is a return value for calls that
2013                                 don't return other objects.
2014                               properties:
2015                                 apiVersion:
2016                                   description: 'APIVersion defines the versioned schema
2017                                     of this representation of an object. Servers should
2018                                     convert recognized schemas to the latest internal
2019                                     value, and may reject unrecognized values. More
2020                                     info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
2021                                   type: string
2022                                 code:
2023                                   description: Suggested HTTP return code for this
2024                                     status, 0 if not set.
2025                                   format: int32
2026                                   type: integer
2027                                 details:
2028                                   description: StatusDetails is a set of additional
2029                                     properties that MAY be set by the server to provide
2030                                     additional information about a response. The Reason
2031                                     field of a Status object defines what attributes
2032                                     will be set. Clients must ignore fields that do
2033                                     not match the defined type of each attribute,
2034                                     and should assume that any attribute may be empty,
2035                                     invalid, or under defined.
2036                                   properties:
2037                                     causes:
2038                                       description: The Causes array includes more
2039                                         details associated with the StatusReason failure.
2040                                         Not all StatusReasons may provide detailed
2041                                         causes.
2042                                       items:
2043                                         description: StatusCause provides more information
2044                                           about an api.Status failure, including cases
2045                                           when multiple errors are encountered.
2046                                         properties:
2047                                           field:
2048                                             description: |-
2049                                               The field of the resource that has caused this error, as named by its JSON serialization. May include dot and postfix notation for nested attributes. Arrays are zero-indexed.  Fields may appear more than once in an array of causes due to fields having multiple errors. Optional.
2050
2051                                               Examples:
2052                                                 "name" - the field "name" on the current resource
2053                                                 "items[0].name" - the field "name" on the first array entry in "items"
2054                                             type: string
2055                                           message:
2056                                             description: A human-readable description
2057                                               of the cause of the error.  This field
2058                                               may be presented as-is to a reader.
2059                                             type: string
2060                                           reason:
2061                                             description: A machine-readable description
2062                                               of the cause of the error. If this value
2063                                               is empty there is no information available.
2064                                             type: string
2065                                       type: array
2066                                     group:
2067                                       description: The group attribute of the resource
2068                                         associated with the status StatusReason.
2069                                       type: string
2070                                     kind:
2071                                       description: 'The kind attribute of the resource
2072                                         associated with the status StatusReason. On
2073                                         some operations may differ from the requested
2074                                         resource Kind. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
2075                                       type: string
2076                                     name:
2077                                       description: The name attribute of the resource
2078                                         associated with the status StatusReason (when
2079                                         there is a single name which can be described).
2080                                       type: string
2081                                     retryAfterSeconds:
2082                                       description: If specified, the time in seconds
2083                                         before the operation should be retried. Some
2084                                         errors may indicate the client must take an
2085                                         alternate action - for those errors this field
2086                                         may indicate how long to wait before taking
2087                                         the alternate action.
2088                                       format: int32
2089                                       type: integer
2090                                     uid:
2091                                       description: 'UID of the resource. (when there
2092                                         is a single resource which can be described).
2093                                         More info: http://kubernetes.io/docs/user-guide/identifiers#uids'
2094                                       type: string
2095                                 kind:
2096                                   description: 'Kind is a string value representing
2097                                     the REST resource this object represents. Servers
2098                                     may infer this from the endpoint the client submits
2099                                     requests to. Cannot be updated. In CamelCase.
2100                                     More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
2101                                   type: string
2102                                 message:
2103                                   description: A human-readable description of the
2104                                     status of this operation.
2105                                   type: string
2106                                 metadata:
2107                                   description: ListMeta describes metadata that synthetic
2108                                     resources must have, including lists and various
2109                                     status objects. A resource may have only one of
2110                                     {ObjectMeta, ListMeta}.
2111                                   properties:
2112                                     continue:
2113                                       description: continue may be set if the user
2114                                         set a limit on the number of items returned,
2115                                         and indicates that the server has more data
2116                                         available. The value is opaque and may be
2117                                         used to issue another request to the endpoint
2118                                         that served this list to retrieve the next
2119                                         set of available objects. Continuing a consistent
2120                                         list may not be possible if the server configuration
2121                                         has changed or more than a few minutes have
2122                                         passed. The resourceVersion field returned
2123                                         when using this continue value will be identical
2124                                         to the value in the first response, unless
2125                                         you have received this token from an error
2126                                         message.
2127                                       type: string
2128                                     resourceVersion:
2129                                       description: 'String that identifies the server''s
2130                                         internal version of this object that can be
2131                                         used by clients to determine when objects
2132                                         have changed. Value must be treated as opaque
2133                                         by clients and passed unmodified back to the
2134                                         server. Populated by the system. Read-only.
2135                                         More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency'
2136                                       type: string
2137                                     selfLink:
2138                                       description: selfLink is a URL representing
2139                                         this object. Populated by the system. Read-only.
2140                                       type: string
2141                                 reason:
2142                                   description: A machine-readable description of why
2143                                     this operation is in the "Failure" status. If
2144                                     this value is empty there is no information available.
2145                                     A Reason clarifies an HTTP status code but does
2146                                     not override it.
2147                                   type: string
2148                                 status:
2149                                   description: 'Status of the operation. One of: "Success"
2150                                     or "Failure". More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status'
2151                                   type: string
2152                           required:
2153                           - pending
2154                         labels:
2155                           description: 'Map of string keys and values that can be
2156                             used to organize and categorize (scope and select) objects.
2157                             May match selectors of replication controllers and services.
2158                             More info: http://kubernetes.io/docs/user-guide/labels'
2159                           type: object
2160                         name:
2161                           description: 'Name must be unique within a namespace. Is
2162                             required when creating resources, although some resources
2163                             may allow a client to request the generation of an appropriate
2164                             name automatically. Name is primarily intended for creation
2165                             idempotence and configuration definition. Cannot be updated.
2166                             More info: http://kubernetes.io/docs/user-guide/identifiers#names'
2167                           type: string
2168                         namespace:
2169                           description: |-
2170                             Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
2171
2172                             Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
2173                           type: string
2174                         ownerReferences:
2175                           description: List of objects depended by this object. If
2176                             ALL objects in the list have been deleted, this object
2177                             will be garbage collected. If this object is managed by
2178                             a controller, then an entry in this list will point to
2179                             this controller, with the controller field set to true.
2180                             There cannot be more than one managing controller.
2181                           items:
2182                             description: OwnerReference contains enough information
2183                               to let you identify an owning object. Currently, an
2184                               owning object must be in the same namespace, so there
2185                               is no namespace field.
2186                             properties:
2187                               apiVersion:
2188                                 description: API version of the referent.
2189                                 type: string
2190                               blockOwnerDeletion:
2191                                 description: If true, AND if the owner has the "foregroundDeletion"
2192                                   finalizer, then the owner cannot be deleted from
2193                                   the key-value store until this reference is removed.
2194                                   Defaults to false. To set this field, a user needs
2195                                   "delete" permission of the owner, otherwise 422
2196                                   (Unprocessable Entity) will be returned.
2197                                 type: boolean
2198                               controller:
2199                                 description: If true, this reference points to the
2200                                   managing controller.
2201                                 type: boolean
2202                               kind:
2203                                 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
2204                                 type: string
2205                               name:
2206                                 description: 'Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names'
2207                                 type: string
2208                               uid:
2209                                 description: 'UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids'
2210                                 type: string
2211                             required:
2212                             - apiVersion
2213                             - kind
2214                             - name
2215                             - uid
2216                           type: array
2217                         resourceVersion:
2218                           description: |-
2219                             An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.
2220
2221                             Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
2222                           type: string
2223                         selfLink:
2224                           description: SelfLink is a URL representing this object.
2225                             Populated by the system. Read-only.
2226                           type: string
2227                         uid:
2228                           description: |-
2229                             UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
2230
2231                             Populated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids
2232                           type: string
2233                     spec:
2234                       description: PersistentVolumeClaimSpec describes the common
2235                         attributes of storage devices and allows a Source for provider-specific
2236                         attributes
2237                       properties:
2238                         accessModes:
2239                           description: 'AccessModes contains the desired access modes
2240                             the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
2241                           items:
2242                             type: string
2243                           type: array
2244                         dataSource:
2245                           description: TypedLocalObjectReference contains enough information
2246                             to let you locate the typed referenced object inside the
2247                             same namespace.
2248                           properties:
2249                             apiGroup:
2250                               description: APIGroup is the group for the resource
2251                                 being referenced. If APIGroup is not specified, the
2252                                 specified Kind must be in the core API group. For
2253                                 any other third-party types, APIGroup is required.
2254                               type: string
2255                             kind:
2256                               description: Kind is the type of resource being referenced
2257                               type: string
2258                             name:
2259                               description: Name is the name of resource being referenced
2260                               type: string
2261                           required:
2262                           - kind
2263                           - name
2264                         resources:
2265                           description: ResourceRequirements describes the compute
2266                             resource requirements.
2267                           properties:
2268                             limits:
2269                               description: 'Limits describes the maximum amount of
2270                                 compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
2271                               type: object
2272                             requests:
2273                               description: 'Requests describes the minimum amount
2274                                 of compute resources required. If Requests is omitted
2275                                 for a container, it defaults to Limits if that is
2276                                 explicitly specified, otherwise to an implementation-defined
2277                                 value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
2278                               type: object
2279                         selector:
2280                           description: A label selector is a label query over a set
2281                             of resources. The result of matchLabels and matchExpressions
2282                             are ANDed. An empty label selector matches all objects.
2283                             A null label selector matches no objects.
2284                           properties:
2285                             matchExpressions:
2286                               description: matchExpressions is a list of label selector
2287                                 requirements. The requirements are ANDed.
2288                               items:
2289                                 description: A label selector requirement is a selector
2290                                   that contains values, a key, and an operator that
2291                                   relates the key and values.
2292                                 properties:
2293                                   key:
2294                                     description: key is the label key that the selector
2295                                       applies to.
2296                                     type: string
2297                                   operator:
2298                                     description: operator represents a key's relationship
2299                                       to a set of values. Valid operators are In,
2300                                       NotIn, Exists and DoesNotExist.
2301                                     type: string
2302                                   values:
2303                                     description: values is an array of string values.
2304                                       If the operator is In or NotIn, the values array
2305                                       must be non-empty. If the operator is Exists
2306                                       or DoesNotExist, the values array must be empty.
2307                                       This array is replaced during a strategic merge
2308                                       patch.
2309                                     items:
2310                                       type: string
2311                                     type: array
2312                                 required:
2313                                 - key
2314                                 - operator
2315                               type: array
2316                             matchLabels:
2317                               description: matchLabels is a map of {key,value} pairs.
2318                                 A single {key,value} in the matchLabels map is equivalent
2319                                 to an element of matchExpressions, whose key field
2320                                 is "key", the operator is "In", and the values array
2321                                 contains only "value". The requirements are ANDed.
2322                               type: object
2323                         storageClassName:
2324                           description: 'Name of the StorageClass required by the claim.
2325                             More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
2326                           type: string
2327                         volumeMode:
2328                           description: volumeMode defines what type of volume is required
2329                             by the claim. Value of Filesystem is implied when not
2330                             included in claim spec. This is an alpha feature and may
2331                             change in the future.
2332                           type: string
2333                         volumeName:
2334                           description: VolumeName is the binding reference to the
2335                             PersistentVolume backing this claim.
2336                           type: string
2337                     status:
2338                       description: PersistentVolumeClaimStatus is the current status
2339                         of a persistent volume claim.
2340                       properties:
2341                         accessModes:
2342                           description: 'AccessModes contains the actual access modes
2343                             the volume backing the PVC has. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
2344                           items:
2345                             type: string
2346                           type: array
2347                         capacity:
2348                           description: Represents the actual resources of the underlying
2349                             volume.
2350                           type: object
2351                         conditions:
2352                           description: Current Condition of persistent volume claim.
2353                             If underlying persistent volume is being resized then
2354                             the Condition will be set to 'ResizeStarted'.
2355                           items:
2356                             description: PersistentVolumeClaimCondition contails details
2357                               about state of pvc
2358                             properties:
2359                               lastProbeTime:
2360                                 description: Time is a wrapper around time.Time which
2361                                   supports correct marshaling to YAML and JSON.  Wrappers
2362                                   are provided for many of the factory methods that
2363                                   the time package offers.
2364                                 format: date-time
2365                                 type: string
2366                               lastTransitionTime:
2367                                 description: Time is a wrapper around time.Time which
2368                                   supports correct marshaling to YAML and JSON.  Wrappers
2369                                   are provided for many of the factory methods that
2370                                   the time package offers.
2371                                 format: date-time
2372                                 type: string
2373                               message:
2374                                 description: Human-readable message indicating details
2375                                   about last transition.
2376                                 type: string
2377                               reason:
2378                                 description: Unique, this should be a short, machine
2379                                   understandable string that gives the reason for
2380                                   condition's last transition. If it reports "ResizeStarted"
2381                                   that means the underlying persistent volume is being
2382                                   resized.
2383                                 type: string
2384                               status:
2385                                 type: string
2386                               type:
2387                                 type: string
2388                             required:
2389                             - type
2390                             - status
2391                           type: array
2392                         phase:
2393                           description: Phase represents the current phase of PersistentVolumeClaim.
2394                           type: string
2395             tag:
2396               description: Tag of Alertmanager container image to be deployed. Defaults
2397                 to the value of `version`. Version is ignored if Tag is set.
2398               type: string
2399             tolerations:
2400               description: If specified, the pod's tolerations.
2401               items:
2402                 description: The pod this Toleration is attached to tolerates any
2403                   taint that matches the triple <key,value,effect> using the matching
2404                   operator <operator>.
2405                 properties:
2406                   effect:
2407                     description: Effect indicates the taint effect to match. Empty
2408                       means match all taint effects. When specified, allowed values
2409                       are NoSchedule, PreferNoSchedule and NoExecute.
2410                     type: string
2411                   key:
2412                     description: Key is the taint key that the toleration applies
2413                       to. Empty means match all taint keys. If the key is empty, operator
2414                       must be Exists; this combination means to match all values and
2415                       all keys.
2416                     type: string
2417                   operator:
2418                     description: Operator represents a key's relationship to the value.
2419                       Valid operators are Exists and Equal. Defaults to Equal. Exists
2420                       is equivalent to wildcard for value, so that a pod can tolerate
2421                       all taints of a particular category.
2422                     type: string
2423                   tolerationSeconds:
2424                     description: TolerationSeconds represents the period of time the
2425                       toleration (which must be of effect NoExecute, otherwise this
2426                       field is ignored) tolerates the taint. By default, it is not
2427                       set, which means tolerate the taint forever (do not evict).
2428                       Zero and negative values will be treated as 0 (evict immediately)
2429                       by the system.
2430                     format: int64
2431                     type: integer
2432                   value:
2433                     description: Value is the taint value the toleration matches to.
2434                       If the operator is Exists, the value should be empty, otherwise
2435                       just a regular string.
2436                     type: string
2437               type: array
2438             version:
2439               description: Version the cluster should be on.
2440               type: string
2441         status:
2442           description: 'AlertmanagerStatus is the most recent observed status of the
2443             Alertmanager cluster. Read-only. Not included when requesting from the
2444             apiserver, only from the Prometheus Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status'
2445           properties:
2446             availableReplicas:
2447               description: Total number of available pods (ready for at least minReadySeconds)
2448                 targeted by this Alertmanager cluster.
2449               format: int32
2450               type: integer
2451             paused:
2452               description: Represents whether any actions on the underlaying managed
2453                 objects are being performed. Only delete actions will be performed.
2454               type: boolean
2455             replicas:
2456               description: Total number of non-terminated pods targeted by this Alertmanager
2457                 cluster (their labels match the selector).
2458               format: int32
2459               type: integer
2460             unavailableReplicas:
2461               description: Total number of unavailable pods targeted by this Alertmanager
2462                 cluster.
2463               format: int32
2464               type: integer
2465             updatedReplicas:
2466               description: Total number of non-terminated pods targeted by this Alertmanager
2467                 cluster that have the desired version spec.
2468               format: int32
2469               type: integer
2470           required:
2471           - paused
2472           - replicas
2473           - updatedReplicas
2474           - availableReplicas
2475           - unavailableReplicas
2476   version: v1
2477 {{- end }}