kind: CustomResourceDefinition
spec:
  group: airflow.stackable.tech
  names:
    kind: AirflowCluster
    plural: airflowclusters
    singular: airflowcluster
    categories: []
    shortNames:
      - airflow
  scope: Namespaced
  versions:
    - name: v1alpha1
      schema:
        openAPIV3Schema:
          type: object
          title: AirflowCluster
          required:
            - spec
          properties:
            spec:
              type: object
              oneOf:
                - required:
                    - celeryExecutors
                - required:
                    - kubernetesExecutors
              required:
                - image
              properties:
                image:
                  type: object
                  anyOf:
                    - required:
                        - custom
                        - productVersion
                    - required:
                        - productVersion
                  properties:
                    repo:
                      type: string
                      nullable: true
                      description: Name of the docker repo, e.g. `docker.stackable.tech/stackable`
                    custom:
                      type: string
                      description: Overwrite the docker image. Specify the full docker image name,
                        e.g.
                        `docker.stackable.tech/stackable/superset:1.4.1-stackable2.1.0`
                    pullPolicy:
                      enum:
                        - IfNotPresent
                        - Always
                        - Never
                      type: string
                      default: Always
                      description: "[Pull
                        policy](https://kubernetes.io/docs/concepts/containers/image\
                        s/#image-pull-policy) used when pulling the Images"
                    pullSecrets:
                      type: array
                      items:
                        type: object
                        properties:
                          name:
                            type: string
                            description: "Name of the referent. More info:
                              https://kubernetes.io/docs/concepts/overview/work\
                              ing-with-objects/names/#names"
                        description: LocalObjectReference contains enough information to let you locate
                          the referenced object inside the same namespace.
                      nullable: true
                      description: "[Image pull
                        secrets](https://kubernetes.io/docs/concepts/containers\
                        /images/#specifying-imagepullsecrets-on-a-pod) to pull
                        images from a private registry"
                    productVersion:
                      type: string
                      description: Version of the product, e.g. `1.4.1`.
                    stackableVersion:
                      type: string
                      nullable: true
                      description: Stackable version of the product, e.g. `23.4`, `23.4.1` or
                        `0.0.0-dev`. If not specified, the operator will use its
                        own version, e.g. `23.4.1`. When using a nightly
                        operator or a pr version, it will use the nightly
                        `0.0.0-dev` image.
                  description: The Airflow image to use
                schedulers:
                  type: object
                  nullable: true
                  required:
                    - roleGroups
                  properties:
                    config:
                      type: object
                      default: {}
                      properties:
                        logging:
                          type: object
                          default:
                            containers: {}
                            enableVectorAgent: null
                          properties:
                            containers:
                              type: object
                              description: Log configuration per container
                              additionalProperties:
                                type: object
                                anyOf:
                                  - required:
                                      - custom
                                  - {}
                                properties:
                                  file:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the file appender
                                  custom:
                                    type: object
                                    properties:
                                      configMap:
                                        type: string
                                        nullable: true
                                        description: ConfigMap containing the log configuration files
                                    description: Custom log configuration provided in a ConfigMap
                                  console:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the console appender
                                  loggers:
                                    type: object
                                    default: {}
                                    description: Configuration per logger
                                    additionalProperties:
                                      type: object
                                      properties:
                                        level:
                                          enum:
                                            - TRACE
                                            - DEBUG
                                            - INFO
                                            - WARN
                                            - ERROR
                                            - FATAL
                                            - NONE
                                          type: string
                                          nullable: true
                                          description: The log level threshold. Log events with a lower log level are
                                            discarded.
                                      description: Configuration of a logger
                                description: Log configuration of the container
                            enableVectorAgent:
                              type: boolean
                              nullable: true
                              description: Wether or not to deploy a container with the Vector log agent
                          description: Logging configuration
                        affinity:
                          type: object
                          default:
                            podAffinity: null
                            nodeAffinity: null
                            nodeSelector: null
                            podAntiAffinity: null
                          properties:
                            podAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - topologyKey
                                    properties:
                                      namespaces:
                                        type: array
                                        items:
                                          type: string
                                        description: namespaces specifies a static list of namespace names that the term
                                          applies to. The term is applied to the
                                          union of the namespaces listed in this
                                          field and the ones selected by
                                          namespaceSelector. null or empty
                                          namespaces list and null
                                          namespaceSelector means "this pod's
                                          namespace".
                                      topologyKey:
                                        type: string
                                        description: This pod should be co-located (affinity) or not co-located
                                          (anti-affinity) with the pods matching
                                          the labelSelector in the specified
                                          namespaces, where co-located is
                                          defined as running on a node whose
                                          value of the label with key
                                          topologyKey matches that of any node
                                          on which any of the selected pods is
                                          running. Empty topologyKey is not
                                          allowed.
                                      labelSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over a set of resources, in this case pods.
                                      namespaceSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over the set of namespaces that the term applies to.
                                          The term is applied to the union of
                                          the namespaces selected by this field
                                          and the ones listed in the namespaces
                                          field. null selector and null or empty
                                          namespaces list means "this pod's
                                          namespace". An empty selector ({})
                                          matches all namespaces.
                                    description: Defines a set of pods (namely those matching the labelSelector
                                      relative to the given namespace(s)) that
                                      this pod should be co-located (affinity)
                                      or not co-located (anti-affinity) with,
                                      where co-located is defined as running on
                                      a node whose value of the label with key
                                      <topologyKey> matches that of any node on
                                      which a pod of the set of pods is running
                                  description: If the affinity requirements specified by this field are not met at
                                    scheduling time, the pod will not be
                                    scheduled onto the node. If the affinity
                                    requirements specified by this field cease
                                    to be met at some point during pod execution
                                    (e.g. due to a pod label update), the system
                                    may or may not try to eventually evict the
                                    pod from its node. When there are multiple
                                    elements, the lists of nodes corresponding
                                    to each podAffinityTerm are intersected,
                                    i.e. all terms must be satisfied.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - podAffinityTerm
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: weight associated with matching the corresponding podAffinityTerm,
                                          in the range 1-100.
                                      podAffinityTerm:
                                        type: object
                                        required:
                                          - topologyKey
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                            description: namespaces specifies a static list of namespace names that the term
                                              applies to. The term is applied to
                                              the union of the namespaces listed
                                              in this field and the ones
                                              selected by namespaceSelector.
                                              null or empty namespaces list and
                                              null namespaceSelector means "this
                                              pod's namespace".
                                          topologyKey:
                                            type: string
                                            description: This pod should be co-located (affinity) or not co-located
                                              (anti-affinity) with the pods
                                              matching the labelSelector in the
                                              specified namespaces, where
                                              co-located is defined as running
                                              on a node whose value of the label
                                              with key topologyKey matches that
                                              of any node on which any of the
                                              selected pods is running. Empty
                                              topologyKey is not allowed.
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over a set of resources, in this case pods.
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over the set of namespaces that the term applies to.
                                              The term is applied to the union
                                              of the namespaces selected by this
                                              field and the ones listed in the
                                              namespaces field. null selector
                                              and null or empty namespaces list
                                              means "this pod's namespace". An
                                              empty selector ({}) matches all
                                              namespaces.
                                        description: Required. A pod affinity term, associated with the corresponding
                                          weight.
                                    description: The weights of all of the matched WeightedPodAffinityTerm fields
                                      are added per-node to find the most
                                      preferred node(s)
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the affinity expressions specified by this
                                    field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    has pods which matches the corresponding
                                    podAffinityTerm; the node(s) with the
                                    highest sum are the most preferred.
                              description: Pod affinity is a group of inter pod affinity scheduling rules.
                            nodeAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: object
                                  required:
                                    - nodeSelectorTerms
                                  properties:
                                    nodeSelectorTerms:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          matchFields:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's fields.
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's labels.
                                        description: A null or empty node selector term matches no objects. The
                                          requirements of them are ANDed. The
                                          TopologySelectorTerm type implements a
                                          subset of the NodeSelectorTerm.
                                      description: Required. A list of node selector terms. The terms are ORed.
                                  description: If the affinity requirements specified by this field are not met at
                                    scheduling time, the pod will not be
                                    scheduled onto the node. If the affinity
                                    requirements specified by this field cease
                                    to be met at some point during pod execution
                                    (e.g. due to an update), the system may or
                                    may not try to eventually evict the pod from
                                    its node.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - preference
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: Weight associated with matching the corresponding nodeSelectorTerm,
                                          in the range 1-100.
                                      preference:
                                        type: object
                                        properties:
                                          matchFields:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's fields.
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's labels.
                                        description: A node selector term, associated with the corresponding weight.
                                    description: An empty preferred scheduling term matches all objects with
                                      implicit weight 0 (i.e. it's a no-op). A
                                      null preferred scheduling term matches no
                                      objects (i.e. is also a no-op).
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the affinity expressions specified by this
                                    field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    matches the corresponding matchExpressions;
                                    the node(s) with the highest sum are the
                                    most preferred.
                              description: Node affinity is a group of node affinity scheduling rules.
                            nodeSelector:
                              type: object
                              nullable: true
                            podAntiAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - topologyKey
                                    properties:
                                      namespaces:
                                        type: array
                                        items:
                                          type: string
                                        description: namespaces specifies a static list of namespace names that the term
                                          applies to. The term is applied to the
                                          union of the namespaces listed in this
                                          field and the ones selected by
                                          namespaceSelector. null or empty
                                          namespaces list and null
                                          namespaceSelector means "this pod's
                                          namespace".
                                      topologyKey:
                                        type: string
                                        description: This pod should be co-located (affinity) or not co-located
                                          (anti-affinity) with the pods matching
                                          the labelSelector in the specified
                                          namespaces, where co-located is
                                          defined as running on a node whose
                                          value of the label with key
                                          topologyKey matches that of any node
                                          on which any of the selected pods is
                                          running. Empty topologyKey is not
                                          allowed.
                                      labelSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over a set of resources, in this case pods.
                                      namespaceSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over the set of namespaces that the term applies to.
                                          The term is applied to the union of
                                          the namespaces selected by this field
                                          and the ones listed in the namespaces
                                          field. null selector and null or empty
                                          namespaces list means "this pod's
                                          namespace". An empty selector ({})
                                          matches all namespaces.
                                    description: Defines a set of pods (namely those matching the labelSelector
                                      relative to the given namespace(s)) that
                                      this pod should be co-located (affinity)
                                      or not co-located (anti-affinity) with,
                                      where co-located is defined as running on
                                      a node whose value of the label with key
                                      <topologyKey> matches that of any node on
                                      which a pod of the set of pods is running
                                  description: If the anti-affinity requirements specified by this field are not
                                    met at scheduling time, the pod will not be
                                    scheduled onto the node. If the
                                    anti-affinity requirements specified by this
                                    field cease to be met at some point during
                                    pod execution (e.g. due to a pod label
                                    update), the system may or may not try to
                                    eventually evict the pod from its node. When
                                    there are multiple elements, the lists of
                                    nodes corresponding to each podAffinityTerm
                                    are intersected, i.e. all terms must be
                                    satisfied.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - podAffinityTerm
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: weight associated with matching the corresponding podAffinityTerm,
                                          in the range 1-100.
                                      podAffinityTerm:
                                        type: object
                                        required:
                                          - topologyKey
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                            description: namespaces specifies a static list of namespace names that the term
                                              applies to. The term is applied to
                                              the union of the namespaces listed
                                              in this field and the ones
                                              selected by namespaceSelector.
                                              null or empty namespaces list and
                                              null namespaceSelector means "this
                                              pod's namespace".
                                          topologyKey:
                                            type: string
                                            description: This pod should be co-located (affinity) or not co-located
                                              (anti-affinity) with the pods
                                              matching the labelSelector in the
                                              specified namespaces, where
                                              co-located is defined as running
                                              on a node whose value of the label
                                              with key topologyKey matches that
                                              of any node on which any of the
                                              selected pods is running. Empty
                                              topologyKey is not allowed.
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over a set of resources, in this case pods.
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over the set of namespaces that the term applies to.
                                              The term is applied to the union
                                              of the namespaces selected by this
                                              field and the ones listed in the
                                              namespaces field. null selector
                                              and null or empty namespaces list
                                              means "this pod's namespace". An
                                              empty selector ({}) matches all
                                              namespaces.
                                        description: Required. A pod affinity term, associated with the corresponding
                                          weight.
                                    description: The weights of all of the matched WeightedPodAffinityTerm fields
                                      are added per-node to find the most
                                      preferred node(s)
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the anti-affinity expressions specified by
                                    this field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling anti-affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    has pods which matches the corresponding
                                    podAffinityTerm; the node(s) with the
                                    highest sum are the most preferred.
                              description: Pod anti affinity is a group of inter pod anti affinity scheduling
                                rules.
                        resources:
                          type: object
                          default:
                            cpu:
                              max: null
                              min: null
                            memory:
                              limit: null
                              runtimeLimits: {}
                            storage: {}
                          properties:
                            cpu:
                              type: object
                              default:
                                max: null
                                min: null
                              properties:
                                max:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                min:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                            memory:
                              type: object
                              properties:
                                limit:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                runtimeLimits:
                                  type: object
                            storage:
                              type: object
                        gracefulShutdownTimeout:
                          type: string
                          nullable: true
                          description: Time period Pods have to gracefully shut down, e.g. `30m`, `1h` or
                            `2d`. Consult the operator documentation for
                            details.
                    roleConfig:
                      type: object
                      default:
                        podDisruptionBudget:
                          enabled: true
                          maxUnavailable: null
                      properties:
                        podDisruptionBudget:
                          type: object
                          default:
                            enabled: true
                            maxUnavailable: null
                          properties:
                            enabled:
                              type: boolean
                              default: true
                              description: Whether a PodDisruptionBudget should be written out for this role.
                                Disabling this enables you to specify your own -
                                custom - one. Defaults to true.
                            maxUnavailable:
                              type: integer
                              format: uint16
                              minimum: 0
                              nullable: true
                              description: The number of Pods that are allowed to be down because of voluntary
                                disruptions. If you don't explicitly set this,
                                the operator will use a sane default based upon
                                knowledge about the individual product.
                          description: "This struct is used to configure: 1.) If PodDisruptionBudgets are
                            created by the operator 2.) The allowed number of
                            Pods to be unavailable (`maxUnavailable`)"
                      description: This is a product-agnostic RoleConfig, which is sufficient for most
                        of the products.
                    roleGroups:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          config:
                            type: object
                            default: {}
                            properties:
                              logging:
                                type: object
                                default:
                                  containers: {}
                                  enableVectorAgent: null
                                properties:
                                  containers:
                                    type: object
                                    description: Log configuration per container
                                    additionalProperties:
                                      type: object
                                      anyOf:
                                        - required:
                                            - custom
                                        - {}
                                      properties:
                                        file:
                                          type: object
                                          nullable: true
                                          properties:
                                            level:
                                              enum:
                                                - TRACE
                                                - DEBUG
                                                - INFO
                                                - WARN
                                                - ERROR
                                                - FATAL
                                                - NONE
                                              type: string
                                              nullable: true
                                              description: The log level threshold. Log events with a lower log level are
                                                discarded.
                                          description: Configuration for the file appender
                                        custom:
                                          type: object
                                          properties:
                                            configMap:
                                              type: string
                                              nullable: true
                                              description: ConfigMap containing the log configuration files
                                          description: Custom log configuration provided in a ConfigMap
                                        console:
                                          type: object
                                          nullable: true
                                          properties:
                                            level:
                                              enum:
                                                - TRACE
                                                - DEBUG
                                                - INFO
                                                - WARN
                                                - ERROR
                                                - FATAL
                                                - NONE
                                              type: string
                                              nullable: true
                                              description: The log level threshold. Log events with a lower log level are
                                                discarded.
                                          description: Configuration for the console appender
                                        loggers:
                                          type: object
                                          default: {}
                                          description: Configuration per logger
                                          additionalProperties:
                                            type: object
                                            properties:
                                              level:
                                                enum:
                                                  - TRACE
                                                  - DEBUG
                                                  - INFO
                                                  - WARN
                                                  - ERROR
                                                  - FATAL
                                                  - NONE
                                                type: string
                                                nullable: true
                                                description: The log level threshold. Log events with a lower log level are
                                                  discarded.
                                            description: Configuration of a logger
                                      description: Log configuration of the container
                                  enableVectorAgent:
                                    type: boolean
                                    nullable: true
                                    description: Wether or not to deploy a container with the Vector log agent
                                description: Logging configuration
                              affinity:
                                type: object
                                default:
                                  podAffinity: null
                                  nodeAffinity: null
                                  nodeSelector: null
                                  podAntiAffinity: null
                                properties:
                                  podAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - topologyKey
                                          properties:
                                            namespaces:
                                              type: array
                                              items:
                                                type: string
                                              description: namespaces specifies a static list of namespace names that the term
                                                applies to. The term is applied
                                                to the union of the namespaces
                                                listed in this field and the
                                                ones selected by
                                                namespaceSelector. null or empty
                                                namespaces list and null
                                                namespaceSelector means "this
                                                pod's namespace".
                                            topologyKey:
                                              type: string
                                              description: This pod should be co-located (affinity) or not co-located
                                                (anti-affinity) with the pods
                                                matching the labelSelector in
                                                the specified namespaces, where
                                                co-located is defined as running
                                                on a node whose value of the
                                                label with key topologyKey
                                                matches that of any node on
                                                which any of the selected pods
                                                is running. Empty topologyKey is
                                                not allowed.
                                            labelSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over a set of resources, in this case pods.
                                            namespaceSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over the set of namespaces that the term applies to.
                                                The term is applied to the union
                                                of the namespaces selected by
                                                this field and the ones listed
                                                in the namespaces field. null
                                                selector and null or empty
                                                namespaces list means "this
                                                pod's namespace". An empty
                                                selector ({}) matches all
                                                namespaces.
                                          description: Defines a set of pods (namely those matching the labelSelector
                                            relative to the given namespace(s))
                                            that this pod should be co-located
                                            (affinity) or not co-located
                                            (anti-affinity) with, where
                                            co-located is defined as running on
                                            a node whose value of the label with
                                            key <topologyKey> matches that of
                                            any node on which a pod of the set
                                            of pods is running
                                        description: If the affinity requirements specified by this field are not met at
                                          scheduling time, the pod will not be
                                          scheduled onto the node. If the
                                          affinity requirements specified by
                                          this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to a pod label update), the system may
                                          or may not try to eventually evict the
                                          pod from its node. When there are
                                          multiple elements, the lists of nodes
                                          corresponding to each podAffinityTerm
                                          are intersected, i.e. all terms must
                                          be satisfied.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - podAffinityTerm
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: weight associated with matching the corresponding podAffinityTerm,
                                                in the range 1-100.
                                            podAffinityTerm:
                                              type: object
                                              required:
                                                - topologyKey
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: namespaces specifies a static list of namespace names that the term
                                                    applies to. The term is
                                                    applied to the union of the
                                                    namespaces listed in this
                                                    field and the ones selected
                                                    by namespaceSelector. null
                                                    or empty namespaces list and
                                                    null namespaceSelector means
                                                    "this pod's namespace".
                                                topologyKey:
                                                  type: string
                                                  description: This pod should be co-located (affinity) or not co-located
                                                    (anti-affinity) with the
                                                    pods matching the
                                                    labelSelector in the
                                                    specified namespaces, where
                                                    co-located is defined as
                                                    running on a node whose
                                                    value of the label with key
                                                    topologyKey matches that of
                                                    any node on which any of the
                                                    selected pods is running.
                                                    Empty topologyKey is not
                                                    allowed.
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over a set of resources, in this case pods.
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over the set of namespaces that the term applies to.
                                                    The term is applied to the
                                                    union of the namespaces
                                                    selected by this field and
                                                    the ones listed in the
                                                    namespaces field. null
                                                    selector and null or empty
                                                    namespaces list means "this
                                                    pod's namespace". An empty
                                                    selector ({}) matches all
                                                    namespaces.
                                              description: Required. A pod affinity term, associated with the corresponding
                                                weight.
                                          description: The weights of all of the matched WeightedPodAffinityTerm fields
                                            are added per-node to find the most
                                            preferred node(s)
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the affinity expressions specified by
                                          this field, but it may choose a node
                                          that violates one or more of the
                                          expressions. The node that is most
                                          preferred is the one with the greatest
                                          sum of weights, i.e. for each node
                                          that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node has pods which matches the
                                          corresponding podAffinityTerm; the
                                          node(s) with the highest sum are the
                                          most preferred.
                                    description: Pod affinity is a group of inter pod affinity scheduling rules.
                                  nodeAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: object
                                        required:
                                          - nodeSelectorTerms
                                        properties:
                                          nodeSelectorTerms:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                matchFields:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's fields.
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's labels.
                                              description: A null or empty node selector term matches no objects. The
                                                requirements of them are ANDed.
                                                The TopologySelectorTerm type
                                                implements a subset of the
                                                NodeSelectorTerm.
                                            description: Required. A list of node selector terms. The terms are ORed.
                                        description: If the affinity requirements specified by this field are not met at
                                          scheduling time, the pod will not be
                                          scheduled onto the node. If the
                                          affinity requirements specified by
                                          this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to an update), the system may or may
                                          not try to eventually evict the pod
                                          from its node.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - preference
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: Weight associated with matching the corresponding nodeSelectorTerm,
                                                in the range 1-100.
                                            preference:
                                              type: object
                                              properties:
                                                matchFields:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's fields.
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's labels.
                                              description: A node selector term, associated with the corresponding weight.
                                          description: An empty preferred scheduling term matches all objects with
                                            implicit weight 0 (i.e. it's a
                                            no-op). A null preferred scheduling
                                            term matches no objects (i.e. is
                                            also a no-op).
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the affinity expressions specified by
                                          this field, but it may choose a node
                                          that violates one or more of the
                                          expressions. The node that is most
                                          preferred is the one with the greatest
                                          sum of weights, i.e. for each node
                                          that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node matches the corresponding
                                          matchExpressions; the node(s) with the
                                          highest sum are the most preferred.
                                    description: Node affinity is a group of node affinity scheduling rules.
                                  nodeSelector:
                                    type: object
                                    nullable: true
                                  podAntiAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - topologyKey
                                          properties:
                                            namespaces:
                                              type: array
                                              items:
                                                type: string
                                              description: namespaces specifies a static list of namespace names that the term
                                                applies to. The term is applied
                                                to the union of the namespaces
                                                listed in this field and the
                                                ones selected by
                                                namespaceSelector. null or empty
                                                namespaces list and null
                                                namespaceSelector means "this
                                                pod's namespace".
                                            topologyKey:
                                              type: string
                                              description: This pod should be co-located (affinity) or not co-located
                                                (anti-affinity) with the pods
                                                matching the labelSelector in
                                                the specified namespaces, where
                                                co-located is defined as running
                                                on a node whose value of the
                                                label with key topologyKey
                                                matches that of any node on
                                                which any of the selected pods
                                                is running. Empty topologyKey is
                                                not allowed.
                                            labelSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over a set of resources, in this case pods.
                                            namespaceSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over the set of namespaces that the term applies to.
                                                The term is applied to the union
                                                of the namespaces selected by
                                                this field and the ones listed
                                                in the namespaces field. null
                                                selector and null or empty
                                                namespaces list means "this
                                                pod's namespace". An empty
                                                selector ({}) matches all
                                                namespaces.
                                          description: Defines a set of pods (namely those matching the labelSelector
                                            relative to the given namespace(s))
                                            that this pod should be co-located
                                            (affinity) or not co-located
                                            (anti-affinity) with, where
                                            co-located is defined as running on
                                            a node whose value of the label with
                                            key <topologyKey> matches that of
                                            any node on which a pod of the set
                                            of pods is running
                                        description: If the anti-affinity requirements specified by this field are not
                                          met at scheduling time, the pod will
                                          not be scheduled onto the node. If the
                                          anti-affinity requirements specified
                                          by this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to a pod label update), the system may
                                          or may not try to eventually evict the
                                          pod from its node. When there are
                                          multiple elements, the lists of nodes
                                          corresponding to each podAffinityTerm
                                          are intersected, i.e. all terms must
                                          be satisfied.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - podAffinityTerm
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: weight associated with matching the corresponding podAffinityTerm,
                                                in the range 1-100.
                                            podAffinityTerm:
                                              type: object
                                              required:
                                                - topologyKey
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: namespaces specifies a static list of namespace names that the term
                                                    applies to. The term is
                                                    applied to the union of the
                                                    namespaces listed in this
                                                    field and the ones selected
                                                    by namespaceSelector. null
                                                    or empty namespaces list and
                                                    null namespaceSelector means
                                                    "this pod's namespace".
                                                topologyKey:
                                                  type: string
                                                  description: This pod should be co-located (affinity) or not co-located
                                                    (anti-affinity) with the
                                                    pods matching the
                                                    labelSelector in the
                                                    specified namespaces, where
                                                    co-located is defined as
                                                    running on a node whose
                                                    value of the label with key
                                                    topologyKey matches that of
                                                    any node on which any of the
                                                    selected pods is running.
                                                    Empty topologyKey is not
                                                    allowed.
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over a set of resources, in this case pods.
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over the set of namespaces that the term applies to.
                                                    The term is applied to the
                                                    union of the namespaces
                                                    selected by this field and
                                                    the ones listed in the
                                                    namespaces field. null
                                                    selector and null or empty
                                                    namespaces list means "this
                                                    pod's namespace". An empty
                                                    selector ({}) matches all
                                                    namespaces.
                                              description: Required. A pod affinity term, associated with the corresponding
                                                weight.
                                          description: The weights of all of the matched WeightedPodAffinityTerm fields
                                            are added per-node to find the most
                                            preferred node(s)
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the anti-affinity expressions
                                          specified by this field, but it may
                                          choose a node that violates one or
                                          more of the expressions. The node that
                                          is most preferred is the one with the
                                          greatest sum of weights, i.e. for each
                                          node that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling anti-affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node has pods which matches the
                                          corresponding podAffinityTerm; the
                                          node(s) with the highest sum are the
                                          most preferred.
                                    description: Pod anti affinity is a group of inter pod anti affinity scheduling
                                      rules.
                              resources:
                                type: object
                                default:
                                  cpu:
                                    max: null
                                    min: null
                                  memory:
                                    limit: null
                                    runtimeLimits: {}
                                  storage: {}
                                properties:
                                  cpu:
                                    type: object
                                    default:
                                      max: null
                                      min: null
                                    properties:
                                      max:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                      min:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                  memory:
                                    type: object
                                    properties:
                                      limit:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                      runtimeLimits:
                                        type: object
                                  storage:
                                    type: object
                              gracefulShutdownTimeout:
                                type: string
                                nullable: true
                                description: Time period Pods have to gracefully shut down, e.g. `30m`, `1h` or
                                  `2d`. Consult the operator documentation for
                                  details.
                          replicas:
                            type: integer
                            format: uint16
                            minimum: 0
                            nullable: true
                          selector:
                            type: object
                            nullable: true
                            properties:
                              matchLabels:
                                type: object
                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                  the matchLabels map is equivalent to an
                                  element of matchExpressions, whose key field
                                  is "key", the operator is "In", and the values
                                  array contains only "value". The requirements
                                  are ANDed.
                                additionalProperties:
                                  type: string
                              matchExpressions:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - key
                                    - operator
                                  properties:
                                    key:
                                      type: string
                                      description: key is the label key that the selector applies to.
                                    values:
                                      type: array
                                      items:
                                        type: string
                                      description: values is an array of string values. If the operator is In or
                                        NotIn, the values array must be
                                        non-empty. If the operator is Exists or
                                        DoesNotExist, the values array must be
                                        empty. This array is replaced during a
                                        strategic merge patch.
                                    operator:
                                      type: string
                                      description: operator represents a key's relationship to a set of values. Valid
                                        operators are In, NotIn, Exists and
                                        DoesNotExist.
                                  description: A label selector requirement is a selector that contains values, a
                                    key, and an operator that relates the key
                                    and values.
                                description: matchExpressions is a list of label selector requirements. The
                                  requirements are ANDed.
                            description: A label selector is a label query over a set of resources. The
                              result of matchLabels and matchExpressions are
                              ANDed. An empty label selector matches all
                              objects. A null label selector matches no objects.
                          cliOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: string
                          envOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: string
                          podOverrides:
                            type: object
                            default: {}
                            properties:
                              spec:
                                type: object
                                properties:
                                  os:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                  hostIPC:
                                    type: boolean
                                  hostPID:
                                    type: boolean
                                  volumes:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        fc:
                                          type: object
                                          properties:
                                            lun:
                                              type: integer
                                              format: int32
                                            wwids:
                                              type: array
                                              items:
                                                type: string
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            targetWWNs:
                                              type: array
                                              items:
                                                type: string
                                        csi:
                                          type: object
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeAttributes:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            nodePublishSecretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        nfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            server:
                                              type: string
                                            readOnly:
                                              type: boolean
                                        rbd:
                                          type: object
                                          properties:
                                            pool:
                                              type: string
                                            user:
                                              type: string
                                            image:
                                              type: string
                                            fsType:
                                              type: string
                                            keyring:
                                              type: string
                                            monitors:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        name:
                                          type: string
                                        iscsi:
                                          type: object
                                          properties:
                                            iqn:
                                              type: string
                                            lun:
                                              type: integer
                                              format: int32
                                            fsType:
                                              type: string
                                            portals:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            targetPortal:
                                              type: string
                                            initiatorName:
                                              type: string
                                            iscsiInterface:
                                              type: string
                                            chapAuthSession:
                                              type: boolean
                                            chapAuthDiscovery:
                                              type: boolean
                                        cephfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            user:
                                              type: string
                                            monitors:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            secretFile:
                                              type: string
                                        cinder:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        secret:
                                          type: object
                                          properties:
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                            optional:
                                              type: boolean
                                            secretName:
                                              type: string
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        flocker:
                                          type: object
                                          properties:
                                            datasetName:
                                              type: string
                                            datasetUUID:
                                              type: string
                                        gitRepo:
                                          type: object
                                          properties:
                                            revision:
                                              type: string
                                            directory:
                                              type: string
                                            repository:
                                              type: string
                                        quobyte:
                                          type: object
                                          properties:
                                            user:
                                              type: string
                                            group:
                                              type: string
                                            tenant:
                                              type: string
                                            volume:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            registry:
                                              type: string
                                        scaleIO:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            system:
                                              type: string
                                            gateway:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            sslEnabled:
                                              type: boolean
                                            volumeName:
                                              type: string
                                            storageMode:
                                              type: string
                                            storagePool:
                                              type: string
                                            protectionDomain:
                                              type: string
                                        emptyDir:
                                          type: object
                                          properties:
                                            medium:
                                              type: string
                                            sizeLimit:
                                              type: string
                                        hostPath:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            type:
                                              type: string
                                        azureDisk:
                                          type: object
                                          properties:
                                            kind:
                                              type: string
                                            fsType:
                                              type: string
                                            diskURI:
                                              type: string
                                            diskName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            cachingMode:
                                              type: string
                                        azureFile:
                                          type: object
                                          properties:
                                            readOnly:
                                              type: boolean
                                            shareName:
                                              type: string
                                            secretName:
                                              type: string
                                        configMap:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                            optional:
                                              type: boolean
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        ephemeral:
                                          type: object
                                          properties:
                                            volumeClaimTemplate:
                                              type: object
                                              properties:
                                                spec:
                                                  type: object
                                                  properties:
                                                    selector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    resources:
                                                      type: object
                                                      properties:
                                                        claims:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              name:
                                                                type: string
                                                        limits:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        requests:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                    dataSource:
                                                      type: object
                                                      properties:
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                        apiGroup:
                                                          type: string
                                                    volumeMode:
                                                      type: string
                                                    volumeName:
                                                      type: string
                                                    accessModes:
                                                      type: array
                                                      items:
                                                        type: string
                                                    dataSourceRef:
                                                      type: object
                                                      properties:
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                        apiGroup:
                                                          type: string
                                                        namespace:
                                                          type: string
                                                    storageClassName:
                                                      type: string
                                                metadata:
                                                  type: object
                                                  properties:
                                                    uid:
                                                      type: string
                                                    name:
                                                      type: string
                                                    labels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    selfLink:
                                                      type: string
                                                    namespace:
                                                      type: string
                                                    finalizers:
                                                      type: array
                                                      items:
                                                        type: string
                                                    generation:
                                                      type: integer
                                                      format: int64
                                                    annotations:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    generateName:
                                                      type: string
                                                    managedFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          time:
                                                            type: string
                                                            format: date-time
                                                          manager:
                                                            type: string
                                                          fieldsV1:
                                                            type: object
                                                          operation:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                          fieldsType:
                                                            type: string
                                                          subresource:
                                                            type: string
                                                    ownerReferences:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          uid:
                                                            type: string
                                                          kind:
                                                            type: string
                                                          name:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                          controller:
                                                            type: boolean
                                                          blockOwnerDeletion:
                                                            type: boolean
                                                    resourceVersion:
                                                      type: string
                                                    creationTimestamp:
                                                      type: string
                                                      format: date-time
                                                    deletionTimestamp:
                                                      type: string
                                                      format: date-time
                                                    deletionGracePeriodSeconds:
                                                      type: integer
                                                      format: int64
                                        glusterfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            endpoints:
                                              type: string
                                        projected:
                                          type: object
                                          properties:
                                            sources:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  secret:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                      optional:
                                                        type: boolean
                                                  configMap:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                      optional:
                                                        type: boolean
                                                  downwardAPI:
                                                    type: object
                                                    properties:
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                            fieldRef:
                                                              type: object
                                                              properties:
                                                                fieldPath:
                                                                  type: string
                                                                apiVersion:
                                                                  type: string
                                                            resourceFieldRef:
                                                              type: object
                                                              properties:
                                                                divisor:
                                                                  type: string
                                                                resource:
                                                                  type: string
                                                                containerName:
                                                                  type: string
                                                  serviceAccountToken:
                                                    type: object
                                                    properties:
                                                      path:
                                                        type: string
                                                      audience:
                                                        type: string
                                                      expirationSeconds:
                                                        type: integer
                                                        format: int64
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        storageos:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            volumeName:
                                              type: string
                                            volumeNamespace:
                                              type: string
                                        flexVolume:
                                          type: object
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            options:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        downwardAPI:
                                          type: object
                                          properties:
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        vsphereVolume:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            volumePath:
                                              type: string
                                            storagePolicyID:
                                              type: string
                                            storagePolicyName:
                                              type: string
                                        portworxVolume:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                        gcePersistentDisk:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            pdName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            partition:
                                              type: integer
                                              format: int32
                                        awsElasticBlockStore:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                            partition:
                                              type: integer
                                              format: int32
                                        photonPersistentDisk:
                                          type: object
                                          properties:
                                            pdID:
                                              type: string
                                            fsType:
                                              type: string
                                        persistentVolumeClaim:
                                          type: object
                                          properties:
                                            readOnly:
                                              type: boolean
                                            claimName:
                                              type: string
                                  affinity:
                                    type: object
                                    properties:
                                      podAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                topologyKey:
                                                  type: string
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                podAffinityTerm:
                                                  type: object
                                                  properties:
                                                    namespaces:
                                                      type: array
                                                      items:
                                                        type: string
                                                    topologyKey:
                                                      type: string
                                                    labelSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    namespaceSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                      nodeAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: object
                                            properties:
                                              nodeSelectorTerms:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    matchFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                preference:
                                                  type: object
                                                  properties:
                                                    matchFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                      podAntiAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                topologyKey:
                                                  type: string
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                podAffinityTerm:
                                                  type: object
                                                  properties:
                                                    namespaces:
                                                      type: array
                                                      items:
                                                        type: string
                                                    topologyKey:
                                                      type: string
                                                    labelSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    namespaceSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                  hostname:
                                    type: string
                                  nodeName:
                                    type: string
                                  overhead:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  priority:
                                    type: integer
                                    format: int32
                                  dnsConfig:
                                    type: object
                                    properties:
                                      options:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                      searches:
                                        type: array
                                        items:
                                          type: string
                                      nameservers:
                                        type: array
                                        items:
                                          type: string
                                  dnsPolicy:
                                    type: string
                                  hostUsers:
                                    type: boolean
                                  subdomain:
                                    type: string
                                  containers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  hostAliases:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        ip:
                                          type: string
                                        hostnames:
                                          type: array
                                          items:
                                            type: string
                                  hostNetwork:
                                    type: boolean
                                  tolerations:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        key:
                                          type: string
                                        value:
                                          type: string
                                        effect:
                                          type: string
                                        operator:
                                          type: string
                                        tolerationSeconds:
                                          type: integer
                                          format: int64
                                  nodeSelector:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  restartPolicy:
                                    type: string
                                  schedulerName:
                                    type: string
                                  initContainers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  readinessGates:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        conditionType:
                                          type: string
                                  resourceClaims:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        source:
                                          type: object
                                          properties:
                                            resourceClaimName:
                                              type: string
                                            resourceClaimTemplateName:
                                              type: string
                                  serviceAccount:
                                    type: string
                                  schedulingGates:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      fsGroup:
                                        type: integer
                                        format: int64
                                      sysctls:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      supplementalGroups:
                                        type: array
                                        items:
                                          type: integer
                                          format: int64
                                      fsGroupChangePolicy:
                                        type: string
                                  imagePullSecrets:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                  preemptionPolicy:
                                    type: string
                                  runtimeClassName:
                                    type: string
                                  priorityClassName:
                                    type: string
                                  setHostnameAsFQDN:
                                    type: boolean
                                  enableServiceLinks:
                                    type: boolean
                                  serviceAccountName:
                                    type: string
                                  ephemeralContainers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        targetContainerName:
                                          type: string
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  activeDeadlineSeconds:
                                    type: integer
                                    format: int64
                                  shareProcessNamespace:
                                    type: boolean
                                  topologySpreadConstraints:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        maxSkew:
                                          type: integer
                                          format: int32
                                        minDomains:
                                          type: integer
                                          format: int32
                                        topologyKey:
                                          type: string
                                        labelSelector:
                                          type: object
                                          properties:
                                            matchLabels:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            matchExpressions:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                  operator:
                                                    type: string
                                        matchLabelKeys:
                                          type: array
                                          items:
                                            type: string
                                        nodeTaintsPolicy:
                                          type: string
                                        whenUnsatisfiable:
                                          type: string
                                        nodeAffinityPolicy:
                                          type: string
                                  automountServiceAccountToken:
                                    type: boolean
                                  terminationGracePeriodSeconds:
                                    type: integer
                                    format: int64
                              metadata:
                                type: object
                                properties:
                                  uid:
                                    type: string
                                  name:
                                    type: string
                                  labels:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  selfLink:
                                    type: string
                                  namespace:
                                    type: string
                                  finalizers:
                                    type: array
                                    items:
                                      type: string
                                  generation:
                                    type: integer
                                    format: int64
                                  annotations:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  generateName:
                                    type: string
                                  managedFields:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        time:
                                          type: string
                                          format: date-time
                                        manager:
                                          type: string
                                        fieldsV1:
                                          type: object
                                        operation:
                                          type: string
                                        apiVersion:
                                          type: string
                                        fieldsType:
                                          type: string
                                        subresource:
                                          type: string
                                  ownerReferences:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        uid:
                                          type: string
                                        kind:
                                          type: string
                                        name:
                                          type: string
                                        apiVersion:
                                          type: string
                                        controller:
                                          type: boolean
                                        blockOwnerDeletion:
                                          type: boolean
                                  resourceVersion:
                                    type: string
                                  creationTimestamp:
                                    type: string
                                    format: date-time
                                  deletionTimestamp:
                                    type: string
                                    format: date-time
                                  deletionGracePeriodSeconds:
                                    type: integer
                                    format: int64
                            description: See PodTemplateSpec
                              (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core)
                              for more details
                          configOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: object
                              additionalProperties:
                                type: string
                    cliOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    envOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    podOverrides:
                      type: object
                      default: {}
                      properties:
                        spec:
                          type: object
                          properties:
                            os:
                              type: object
                              properties:
                                name:
                                  type: string
                            hostIPC:
                              type: boolean
                            hostPID:
                              type: boolean
                            volumes:
                              type: array
                              items:
                                type: object
                                properties:
                                  fc:
                                    type: object
                                    properties:
                                      lun:
                                        type: integer
                                        format: int32
                                      wwids:
                                        type: array
                                        items:
                                          type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      targetWWNs:
                                        type: array
                                        items:
                                          type: string
                                  csi:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeAttributes:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      nodePublishSecretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  nfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      server:
                                        type: string
                                      readOnly:
                                        type: boolean
                                  rbd:
                                    type: object
                                    properties:
                                      pool:
                                        type: string
                                      user:
                                        type: string
                                      image:
                                        type: string
                                      fsType:
                                        type: string
                                      keyring:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  name:
                                    type: string
                                  iscsi:
                                    type: object
                                    properties:
                                      iqn:
                                        type: string
                                      lun:
                                        type: integer
                                        format: int32
                                      fsType:
                                        type: string
                                      portals:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      targetPortal:
                                        type: string
                                      initiatorName:
                                        type: string
                                      iscsiInterface:
                                        type: string
                                      chapAuthSession:
                                        type: boolean
                                      chapAuthDiscovery:
                                        type: boolean
                                  cephfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      user:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      secretFile:
                                        type: string
                                  cinder:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  secret:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      secretName:
                                        type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  flocker:
                                    type: object
                                    properties:
                                      datasetName:
                                        type: string
                                      datasetUUID:
                                        type: string
                                  gitRepo:
                                    type: object
                                    properties:
                                      revision:
                                        type: string
                                      directory:
                                        type: string
                                      repository:
                                        type: string
                                  quobyte:
                                    type: object
                                    properties:
                                      user:
                                        type: string
                                      group:
                                        type: string
                                      tenant:
                                        type: string
                                      volume:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      registry:
                                        type: string
                                  scaleIO:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      system:
                                        type: string
                                      gateway:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      sslEnabled:
                                        type: boolean
                                      volumeName:
                                        type: string
                                      storageMode:
                                        type: string
                                      storagePool:
                                        type: string
                                      protectionDomain:
                                        type: string
                                  emptyDir:
                                    type: object
                                    properties:
                                      medium:
                                        type: string
                                      sizeLimit:
                                        type: string
                                  hostPath:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      type:
                                        type: string
                                  azureDisk:
                                    type: object
                                    properties:
                                      kind:
                                        type: string
                                      fsType:
                                        type: string
                                      diskURI:
                                        type: string
                                      diskName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      cachingMode:
                                        type: string
                                  azureFile:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      shareName:
                                        type: string
                                      secretName:
                                        type: string
                                  configMap:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  ephemeral:
                                    type: object
                                    properties:
                                      volumeClaimTemplate:
                                        type: object
                                        properties:
                                          spec:
                                            type: object
                                            properties:
                                              selector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              resources:
                                                type: object
                                                properties:
                                                  claims:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        name:
                                                          type: string
                                                  limits:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  requests:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                              dataSource:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                              volumeMode:
                                                type: string
                                              volumeName:
                                                type: string
                                              accessModes:
                                                type: array
                                                items:
                                                  type: string
                                              dataSourceRef:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                                  namespace:
                                                    type: string
                                              storageClassName:
                                                type: string
                                          metadata:
                                            type: object
                                            properties:
                                              uid:
                                                type: string
                                              name:
                                                type: string
                                              labels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              selfLink:
                                                type: string
                                              namespace:
                                                type: string
                                              finalizers:
                                                type: array
                                                items:
                                                  type: string
                                              generation:
                                                type: integer
                                                format: int64
                                              annotations:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              generateName:
                                                type: string
                                              managedFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    time:
                                                      type: string
                                                      format: date-time
                                                    manager:
                                                      type: string
                                                    fieldsV1:
                                                      type: object
                                                    operation:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    fieldsType:
                                                      type: string
                                                    subresource:
                                                      type: string
                                              ownerReferences:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    uid:
                                                      type: string
                                                    kind:
                                                      type: string
                                                    name:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    controller:
                                                      type: boolean
                                                    blockOwnerDeletion:
                                                      type: boolean
                                              resourceVersion:
                                                type: string
                                              creationTimestamp:
                                                type: string
                                                format: date-time
                                              deletionTimestamp:
                                                type: string
                                                format: date-time
                                              deletionGracePeriodSeconds:
                                                type: integer
                                                format: int64
                                  glusterfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      endpoints:
                                        type: string
                                  projected:
                                    type: object
                                    properties:
                                      sources:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            secret:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            configMap:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            downwardAPI:
                                              type: object
                                              properties:
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                      fieldRef:
                                                        type: object
                                                        properties:
                                                          fieldPath:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                      resourceFieldRef:
                                                        type: object
                                                        properties:
                                                          divisor:
                                                            type: string
                                                          resource:
                                                            type: string
                                                          containerName:
                                                            type: string
                                            serviceAccountToken:
                                              type: object
                                              properties:
                                                path:
                                                  type: string
                                                audience:
                                                  type: string
                                                expirationSeconds:
                                                  type: integer
                                                  format: int64
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  storageos:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      volumeName:
                                        type: string
                                      volumeNamespace:
                                        type: string
                                  flexVolume:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      options:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  downwardAPI:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  vsphereVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      volumePath:
                                        type: string
                                      storagePolicyID:
                                        type: string
                                      storagePolicyName:
                                        type: string
                                  portworxVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                  gcePersistentDisk:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      pdName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      partition:
                                        type: integer
                                        format: int32
                                  awsElasticBlockStore:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      partition:
                                        type: integer
                                        format: int32
                                  photonPersistentDisk:
                                    type: object
                                    properties:
                                      pdID:
                                        type: string
                                      fsType:
                                        type: string
                                  persistentVolumeClaim:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      claimName:
                                        type: string
                            affinity:
                              type: object
                              properties:
                                podAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                nodeAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: object
                                      properties:
                                        nodeSelectorTerms:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          preference:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                podAntiAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                            hostname:
                              type: string
                            nodeName:
                              type: string
                            overhead:
                              type: object
                              additionalProperties:
                                type: string
                            priority:
                              type: integer
                              format: int32
                            dnsConfig:
                              type: object
                              properties:
                                options:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                searches:
                                  type: array
                                  items:
                                    type: string
                                nameservers:
                                  type: array
                                  items:
                                    type: string
                            dnsPolicy:
                              type: string
                            hostUsers:
                              type: boolean
                            subdomain:
                              type: string
                            containers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            hostAliases:
                              type: array
                              items:
                                type: object
                                properties:
                                  ip:
                                    type: string
                                  hostnames:
                                    type: array
                                    items:
                                      type: string
                            hostNetwork:
                              type: boolean
                            tolerations:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                                  effect:
                                    type: string
                                  operator:
                                    type: string
                                  tolerationSeconds:
                                    type: integer
                                    format: int64
                            nodeSelector:
                              type: object
                              additionalProperties:
                                type: string
                            restartPolicy:
                              type: string
                            schedulerName:
                              type: string
                            initContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            readinessGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  conditionType:
                                    type: string
                            resourceClaims:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                                  source:
                                    type: object
                                    properties:
                                      resourceClaimName:
                                        type: string
                                      resourceClaimTemplateName:
                                        type: string
                            serviceAccount:
                              type: string
                            schedulingGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            securityContext:
                              type: object
                              properties:
                                fsGroup:
                                  type: integer
                                  format: int64
                                sysctls:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                runAsUser:
                                  type: integer
                                  format: int64
                                runAsGroup:
                                  type: integer
                                  format: int64
                                runAsNonRoot:
                                  type: boolean
                                seLinuxOptions:
                                  type: object
                                  properties:
                                    role:
                                      type: string
                                    type:
                                      type: string
                                    user:
                                      type: string
                                    level:
                                      type: string
                                seccompProfile:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                    localhostProfile:
                                      type: string
                                windowsOptions:
                                  type: object
                                  properties:
                                    hostProcess:
                                      type: boolean
                                    runAsUserName:
                                      type: string
                                    gmsaCredentialSpec:
                                      type: string
                                    gmsaCredentialSpecName:
                                      type: string
                                supplementalGroups:
                                  type: array
                                  items:
                                    type: integer
                                    format: int64
                                fsGroupChangePolicy:
                                  type: string
                            imagePullSecrets:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            preemptionPolicy:
                              type: string
                            runtimeClassName:
                              type: string
                            priorityClassName:
                              type: string
                            setHostnameAsFQDN:
                              type: boolean
                            enableServiceLinks:
                              type: boolean
                            serviceAccountName:
                              type: string
                            ephemeralContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  targetContainerName:
                                    type: string
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            activeDeadlineSeconds:
                              type: integer
                              format: int64
                            shareProcessNamespace:
                              type: boolean
                            topologySpreadConstraints:
                              type: array
                              items:
                                type: object
                                properties:
                                  maxSkew:
                                    type: integer
                                    format: int32
                                  minDomains:
                                    type: integer
                                    format: int32
                                  topologyKey:
                                    type: string
                                  labelSelector:
                                    type: object
                                    properties:
                                      matchLabels:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      matchExpressions:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                            operator:
                                              type: string
                                  matchLabelKeys:
                                    type: array
                                    items:
                                      type: string
                                  nodeTaintsPolicy:
                                    type: string
                                  whenUnsatisfiable:
                                    type: string
                                  nodeAffinityPolicy:
                                    type: string
                            automountServiceAccountToken:
                              type: boolean
                            terminationGracePeriodSeconds:
                              type: integer
                              format: int64
                        metadata:
                          type: object
                          properties:
                            uid:
                              type: string
                            name:
                              type: string
                            labels:
                              type: object
                              additionalProperties:
                                type: string
                            selfLink:
                              type: string
                            namespace:
                              type: string
                            finalizers:
                              type: array
                              items:
                                type: string
                            generation:
                              type: integer
                              format: int64
                            annotations:
                              type: object
                              additionalProperties:
                                type: string
                            generateName:
                              type: string
                            managedFields:
                              type: array
                              items:
                                type: object
                                properties:
                                  time:
                                    type: string
                                    format: date-time
                                  manager:
                                    type: string
                                  fieldsV1:
                                    type: object
                                  operation:
                                    type: string
                                  apiVersion:
                                    type: string
                                  fieldsType:
                                    type: string
                                  subresource:
                                    type: string
                            ownerReferences:
                              type: array
                              items:
                                type: object
                                properties:
                                  uid:
                                    type: string
                                  kind:
                                    type: string
                                  name:
                                    type: string
                                  apiVersion:
                                    type: string
                                  controller:
                                    type: boolean
                                  blockOwnerDeletion:
                                    type: boolean
                            resourceVersion:
                              type: string
                            creationTimestamp:
                              type: string
                              format: date-time
                            deletionTimestamp:
                              type: string
                              format: date-time
                            deletionGracePeriodSeconds:
                              type: integer
                              format: int64
                      description: See PodTemplateSpec
                        (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core)
                        for more details
                    configOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: object
                        additionalProperties:
                          type: string
                  description: This struct represents a role - e.g. HDFS datanodes or Trino
                    workers. It has a [`HashMap`] containing all the roleGroups
                    that are part of this role. Additionally, there is a
                    `config`, which is configurable at the role *and* roleGroup
                    level. Everything at roleGroup level is merged on top of
                    what is configured on role level using the [`Merge`] trait.
                    There is also a second form of config, which can only be
                    configured at role level, the `roleConfig`.
                webservers:
                  type: object
                  nullable: true
                  required:
                    - roleGroups
                  properties:
                    config:
                      type: object
                      default: {}
                      properties:
                        logging:
                          type: object
                          default:
                            containers: {}
                            enableVectorAgent: null
                          properties:
                            containers:
                              type: object
                              description: Log configuration per container
                              additionalProperties:
                                type: object
                                anyOf:
                                  - required:
                                      - custom
                                  - {}
                                properties:
                                  file:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the file appender
                                  custom:
                                    type: object
                                    properties:
                                      configMap:
                                        type: string
                                        nullable: true
                                        description: ConfigMap containing the log configuration files
                                    description: Custom log configuration provided in a ConfigMap
                                  console:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the console appender
                                  loggers:
                                    type: object
                                    default: {}
                                    description: Configuration per logger
                                    additionalProperties:
                                      type: object
                                      properties:
                                        level:
                                          enum:
                                            - TRACE
                                            - DEBUG
                                            - INFO
                                            - WARN
                                            - ERROR
                                            - FATAL
                                            - NONE
                                          type: string
                                          nullable: true
                                          description: The log level threshold. Log events with a lower log level are
                                            discarded.
                                      description: Configuration of a logger
                                description: Log configuration of the container
                            enableVectorAgent:
                              type: boolean
                              nullable: true
                              description: Wether or not to deploy a container with the Vector log agent
                          description: Logging configuration
                        affinity:
                          type: object
                          default:
                            podAffinity: null
                            nodeAffinity: null
                            nodeSelector: null
                            podAntiAffinity: null
                          properties:
                            podAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - topologyKey
                                    properties:
                                      namespaces:
                                        type: array
                                        items:
                                          type: string
                                        description: namespaces specifies a static list of namespace names that the term
                                          applies to. The term is applied to the
                                          union of the namespaces listed in this
                                          field and the ones selected by
                                          namespaceSelector. null or empty
                                          namespaces list and null
                                          namespaceSelector means "this pod's
                                          namespace".
                                      topologyKey:
                                        type: string
                                        description: This pod should be co-located (affinity) or not co-located
                                          (anti-affinity) with the pods matching
                                          the labelSelector in the specified
                                          namespaces, where co-located is
                                          defined as running on a node whose
                                          value of the label with key
                                          topologyKey matches that of any node
                                          on which any of the selected pods is
                                          running. Empty topologyKey is not
                                          allowed.
                                      labelSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over a set of resources, in this case pods.
                                      namespaceSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over the set of namespaces that the term applies to.
                                          The term is applied to the union of
                                          the namespaces selected by this field
                                          and the ones listed in the namespaces
                                          field. null selector and null or empty
                                          namespaces list means "this pod's
                                          namespace". An empty selector ({})
                                          matches all namespaces.
                                    description: Defines a set of pods (namely those matching the labelSelector
                                      relative to the given namespace(s)) that
                                      this pod should be co-located (affinity)
                                      or not co-located (anti-affinity) with,
                                      where co-located is defined as running on
                                      a node whose value of the label with key
                                      <topologyKey> matches that of any node on
                                      which a pod of the set of pods is running
                                  description: If the affinity requirements specified by this field are not met at
                                    scheduling time, the pod will not be
                                    scheduled onto the node. If the affinity
                                    requirements specified by this field cease
                                    to be met at some point during pod execution
                                    (e.g. due to a pod label update), the system
                                    may or may not try to eventually evict the
                                    pod from its node. When there are multiple
                                    elements, the lists of nodes corresponding
                                    to each podAffinityTerm are intersected,
                                    i.e. all terms must be satisfied.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - podAffinityTerm
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: weight associated with matching the corresponding podAffinityTerm,
                                          in the range 1-100.
                                      podAffinityTerm:
                                        type: object
                                        required:
                                          - topologyKey
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                            description: namespaces specifies a static list of namespace names that the term
                                              applies to. The term is applied to
                                              the union of the namespaces listed
                                              in this field and the ones
                                              selected by namespaceSelector.
                                              null or empty namespaces list and
                                              null namespaceSelector means "this
                                              pod's namespace".
                                          topologyKey:
                                            type: string
                                            description: This pod should be co-located (affinity) or not co-located
                                              (anti-affinity) with the pods
                                              matching the labelSelector in the
                                              specified namespaces, where
                                              co-located is defined as running
                                              on a node whose value of the label
                                              with key topologyKey matches that
                                              of any node on which any of the
                                              selected pods is running. Empty
                                              topologyKey is not allowed.
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over a set of resources, in this case pods.
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over the set of namespaces that the term applies to.
                                              The term is applied to the union
                                              of the namespaces selected by this
                                              field and the ones listed in the
                                              namespaces field. null selector
                                              and null or empty namespaces list
                                              means "this pod's namespace". An
                                              empty selector ({}) matches all
                                              namespaces.
                                        description: Required. A pod affinity term, associated with the corresponding
                                          weight.
                                    description: The weights of all of the matched WeightedPodAffinityTerm fields
                                      are added per-node to find the most
                                      preferred node(s)
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the affinity expressions specified by this
                                    field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    has pods which matches the corresponding
                                    podAffinityTerm; the node(s) with the
                                    highest sum are the most preferred.
                              description: Pod affinity is a group of inter pod affinity scheduling rules.
                            nodeAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: object
                                  required:
                                    - nodeSelectorTerms
                                  properties:
                                    nodeSelectorTerms:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          matchFields:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's fields.
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's labels.
                                        description: A null or empty node selector term matches no objects. The
                                          requirements of them are ANDed. The
                                          TopologySelectorTerm type implements a
                                          subset of the NodeSelectorTerm.
                                      description: Required. A list of node selector terms. The terms are ORed.
                                  description: If the affinity requirements specified by this field are not met at
                                    scheduling time, the pod will not be
                                    scheduled onto the node. If the affinity
                                    requirements specified by this field cease
                                    to be met at some point during pod execution
                                    (e.g. due to an update), the system may or
                                    may not try to eventually evict the pod from
                                    its node.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - preference
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: Weight associated with matching the corresponding nodeSelectorTerm,
                                          in the range 1-100.
                                      preference:
                                        type: object
                                        properties:
                                          matchFields:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's fields.
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's labels.
                                        description: A node selector term, associated with the corresponding weight.
                                    description: An empty preferred scheduling term matches all objects with
                                      implicit weight 0 (i.e. it's a no-op). A
                                      null preferred scheduling term matches no
                                      objects (i.e. is also a no-op).
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the affinity expressions specified by this
                                    field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    matches the corresponding matchExpressions;
                                    the node(s) with the highest sum are the
                                    most preferred.
                              description: Node affinity is a group of node affinity scheduling rules.
                            nodeSelector:
                              type: object
                              nullable: true
                            podAntiAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - topologyKey
                                    properties:
                                      namespaces:
                                        type: array
                                        items:
                                          type: string
                                        description: namespaces specifies a static list of namespace names that the term
                                          applies to. The term is applied to the
                                          union of the namespaces listed in this
                                          field and the ones selected by
                                          namespaceSelector. null or empty
                                          namespaces list and null
                                          namespaceSelector means "this pod's
                                          namespace".
                                      topologyKey:
                                        type: string
                                        description: This pod should be co-located (affinity) or not co-located
                                          (anti-affinity) with the pods matching
                                          the labelSelector in the specified
                                          namespaces, where co-located is
                                          defined as running on a node whose
                                          value of the label with key
                                          topologyKey matches that of any node
                                          on which any of the selected pods is
                                          running. Empty topologyKey is not
                                          allowed.
                                      labelSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over a set of resources, in this case pods.
                                      namespaceSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over the set of namespaces that the term applies to.
                                          The term is applied to the union of
                                          the namespaces selected by this field
                                          and the ones listed in the namespaces
                                          field. null selector and null or empty
                                          namespaces list means "this pod's
                                          namespace". An empty selector ({})
                                          matches all namespaces.
                                    description: Defines a set of pods (namely those matching the labelSelector
                                      relative to the given namespace(s)) that
                                      this pod should be co-located (affinity)
                                      or not co-located (anti-affinity) with,
                                      where co-located is defined as running on
                                      a node whose value of the label with key
                                      <topologyKey> matches that of any node on
                                      which a pod of the set of pods is running
                                  description: If the anti-affinity requirements specified by this field are not
                                    met at scheduling time, the pod will not be
                                    scheduled onto the node. If the
                                    anti-affinity requirements specified by this
                                    field cease to be met at some point during
                                    pod execution (e.g. due to a pod label
                                    update), the system may or may not try to
                                    eventually evict the pod from its node. When
                                    there are multiple elements, the lists of
                                    nodes corresponding to each podAffinityTerm
                                    are intersected, i.e. all terms must be
                                    satisfied.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - podAffinityTerm
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: weight associated with matching the corresponding podAffinityTerm,
                                          in the range 1-100.
                                      podAffinityTerm:
                                        type: object
                                        required:
                                          - topologyKey
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                            description: namespaces specifies a static list of namespace names that the term
                                              applies to. The term is applied to
                                              the union of the namespaces listed
                                              in this field and the ones
                                              selected by namespaceSelector.
                                              null or empty namespaces list and
                                              null namespaceSelector means "this
                                              pod's namespace".
                                          topologyKey:
                                            type: string
                                            description: This pod should be co-located (affinity) or not co-located
                                              (anti-affinity) with the pods
                                              matching the labelSelector in the
                                              specified namespaces, where
                                              co-located is defined as running
                                              on a node whose value of the label
                                              with key topologyKey matches that
                                              of any node on which any of the
                                              selected pods is running. Empty
                                              topologyKey is not allowed.
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over a set of resources, in this case pods.
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over the set of namespaces that the term applies to.
                                              The term is applied to the union
                                              of the namespaces selected by this
                                              field and the ones listed in the
                                              namespaces field. null selector
                                              and null or empty namespaces list
                                              means "this pod's namespace". An
                                              empty selector ({}) matches all
                                              namespaces.
                                        description: Required. A pod affinity term, associated with the corresponding
                                          weight.
                                    description: The weights of all of the matched WeightedPodAffinityTerm fields
                                      are added per-node to find the most
                                      preferred node(s)
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the anti-affinity expressions specified by
                                    this field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling anti-affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    has pods which matches the corresponding
                                    podAffinityTerm; the node(s) with the
                                    highest sum are the most preferred.
                              description: Pod anti affinity is a group of inter pod anti affinity scheduling
                                rules.
                        resources:
                          type: object
                          default:
                            cpu:
                              max: null
                              min: null
                            memory:
                              limit: null
                              runtimeLimits: {}
                            storage: {}
                          properties:
                            cpu:
                              type: object
                              default:
                                max: null
                                min: null
                              properties:
                                max:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                min:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                            memory:
                              type: object
                              properties:
                                limit:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                runtimeLimits:
                                  type: object
                            storage:
                              type: object
                        gracefulShutdownTimeout:
                          type: string
                          nullable: true
                          description: Time period Pods have to gracefully shut down, e.g. `30m`, `1h` or
                            `2d`. Consult the operator documentation for
                            details.
                    roleConfig:
                      type: object
                      default:
                        podDisruptionBudget:
                          enabled: true
                          maxUnavailable: null
                      properties:
                        podDisruptionBudget:
                          type: object
                          default:
                            enabled: true
                            maxUnavailable: null
                          properties:
                            enabled:
                              type: boolean
                              default: true
                              description: Whether a PodDisruptionBudget should be written out for this role.
                                Disabling this enables you to specify your own -
                                custom - one. Defaults to true.
                            maxUnavailable:
                              type: integer
                              format: uint16
                              minimum: 0
                              nullable: true
                              description: The number of Pods that are allowed to be down because of voluntary
                                disruptions. If you don't explicitly set this,
                                the operator will use a sane default based upon
                                knowledge about the individual product.
                          description: "This struct is used to configure: 1.) If PodDisruptionBudgets are
                            created by the operator 2.) The allowed number of
                            Pods to be unavailable (`maxUnavailable`)"
                      description: This is a product-agnostic RoleConfig, which is sufficient for most
                        of the products.
                    roleGroups:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          config:
                            type: object
                            default: {}
                            properties:
                              logging:
                                type: object
                                default:
                                  containers: {}
                                  enableVectorAgent: null
                                properties:
                                  containers:
                                    type: object
                                    description: Log configuration per container
                                    additionalProperties:
                                      type: object
                                      anyOf:
                                        - required:
                                            - custom
                                        - {}
                                      properties:
                                        file:
                                          type: object
                                          nullable: true
                                          properties:
                                            level:
                                              enum:
                                                - TRACE
                                                - DEBUG
                                                - INFO
                                                - WARN
                                                - ERROR
                                                - FATAL
                                                - NONE
                                              type: string
                                              nullable: true
                                              description: The log level threshold. Log events with a lower log level are
                                                discarded.
                                          description: Configuration for the file appender
                                        custom:
                                          type: object
                                          properties:
                                            configMap:
                                              type: string
                                              nullable: true
                                              description: ConfigMap containing the log configuration files
                                          description: Custom log configuration provided in a ConfigMap
                                        console:
                                          type: object
                                          nullable: true
                                          properties:
                                            level:
                                              enum:
                                                - TRACE
                                                - DEBUG
                                                - INFO
                                                - WARN
                                                - ERROR
                                                - FATAL
                                                - NONE
                                              type: string
                                              nullable: true
                                              description: The log level threshold. Log events with a lower log level are
                                                discarded.
                                          description: Configuration for the console appender
                                        loggers:
                                          type: object
                                          default: {}
                                          description: Configuration per logger
                                          additionalProperties:
                                            type: object
                                            properties:
                                              level:
                                                enum:
                                                  - TRACE
                                                  - DEBUG
                                                  - INFO
                                                  - WARN
                                                  - ERROR
                                                  - FATAL
                                                  - NONE
                                                type: string
                                                nullable: true
                                                description: The log level threshold. Log events with a lower log level are
                                                  discarded.
                                            description: Configuration of a logger
                                      description: Log configuration of the container
                                  enableVectorAgent:
                                    type: boolean
                                    nullable: true
                                    description: Wether or not to deploy a container with the Vector log agent
                                description: Logging configuration
                              affinity:
                                type: object
                                default:
                                  podAffinity: null
                                  nodeAffinity: null
                                  nodeSelector: null
                                  podAntiAffinity: null
                                properties:
                                  podAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - topologyKey
                                          properties:
                                            namespaces:
                                              type: array
                                              items:
                                                type: string
                                              description: namespaces specifies a static list of namespace names that the term
                                                applies to. The term is applied
                                                to the union of the namespaces
                                                listed in this field and the
                                                ones selected by
                                                namespaceSelector. null or empty
                                                namespaces list and null
                                                namespaceSelector means "this
                                                pod's namespace".
                                            topologyKey:
                                              type: string
                                              description: This pod should be co-located (affinity) or not co-located
                                                (anti-affinity) with the pods
                                                matching the labelSelector in
                                                the specified namespaces, where
                                                co-located is defined as running
                                                on a node whose value of the
                                                label with key topologyKey
                                                matches that of any node on
                                                which any of the selected pods
                                                is running. Empty topologyKey is
                                                not allowed.
                                            labelSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over a set of resources, in this case pods.
                                            namespaceSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over the set of namespaces that the term applies to.
                                                The term is applied to the union
                                                of the namespaces selected by
                                                this field and the ones listed
                                                in the namespaces field. null
                                                selector and null or empty
                                                namespaces list means "this
                                                pod's namespace". An empty
                                                selector ({}) matches all
                                                namespaces.
                                          description: Defines a set of pods (namely those matching the labelSelector
                                            relative to the given namespace(s))
                                            that this pod should be co-located
                                            (affinity) or not co-located
                                            (anti-affinity) with, where
                                            co-located is defined as running on
                                            a node whose value of the label with
                                            key <topologyKey> matches that of
                                            any node on which a pod of the set
                                            of pods is running
                                        description: If the affinity requirements specified by this field are not met at
                                          scheduling time, the pod will not be
                                          scheduled onto the node. If the
                                          affinity requirements specified by
                                          this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to a pod label update), the system may
                                          or may not try to eventually evict the
                                          pod from its node. When there are
                                          multiple elements, the lists of nodes
                                          corresponding to each podAffinityTerm
                                          are intersected, i.e. all terms must
                                          be satisfied.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - podAffinityTerm
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: weight associated with matching the corresponding podAffinityTerm,
                                                in the range 1-100.
                                            podAffinityTerm:
                                              type: object
                                              required:
                                                - topologyKey
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: namespaces specifies a static list of namespace names that the term
                                                    applies to. The term is
                                                    applied to the union of the
                                                    namespaces listed in this
                                                    field and the ones selected
                                                    by namespaceSelector. null
                                                    or empty namespaces list and
                                                    null namespaceSelector means
                                                    "this pod's namespace".
                                                topologyKey:
                                                  type: string
                                                  description: This pod should be co-located (affinity) or not co-located
                                                    (anti-affinity) with the
                                                    pods matching the
                                                    labelSelector in the
                                                    specified namespaces, where
                                                    co-located is defined as
                                                    running on a node whose
                                                    value of the label with key
                                                    topologyKey matches that of
                                                    any node on which any of the
                                                    selected pods is running.
                                                    Empty topologyKey is not
                                                    allowed.
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over a set of resources, in this case pods.
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over the set of namespaces that the term applies to.
                                                    The term is applied to the
                                                    union of the namespaces
                                                    selected by this field and
                                                    the ones listed in the
                                                    namespaces field. null
                                                    selector and null or empty
                                                    namespaces list means "this
                                                    pod's namespace". An empty
                                                    selector ({}) matches all
                                                    namespaces.
                                              description: Required. A pod affinity term, associated with the corresponding
                                                weight.
                                          description: The weights of all of the matched WeightedPodAffinityTerm fields
                                            are added per-node to find the most
                                            preferred node(s)
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the affinity expressions specified by
                                          this field, but it may choose a node
                                          that violates one or more of the
                                          expressions. The node that is most
                                          preferred is the one with the greatest
                                          sum of weights, i.e. for each node
                                          that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node has pods which matches the
                                          corresponding podAffinityTerm; the
                                          node(s) with the highest sum are the
                                          most preferred.
                                    description: Pod affinity is a group of inter pod affinity scheduling rules.
                                  nodeAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: object
                                        required:
                                          - nodeSelectorTerms
                                        properties:
                                          nodeSelectorTerms:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                matchFields:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's fields.
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's labels.
                                              description: A null or empty node selector term matches no objects. The
                                                requirements of them are ANDed.
                                                The TopologySelectorTerm type
                                                implements a subset of the
                                                NodeSelectorTerm.
                                            description: Required. A list of node selector terms. The terms are ORed.
                                        description: If the affinity requirements specified by this field are not met at
                                          scheduling time, the pod will not be
                                          scheduled onto the node. If the
                                          affinity requirements specified by
                                          this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to an update), the system may or may
                                          not try to eventually evict the pod
                                          from its node.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - preference
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: Weight associated with matching the corresponding nodeSelectorTerm,
                                                in the range 1-100.
                                            preference:
                                              type: object
                                              properties:
                                                matchFields:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's fields.
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's labels.
                                              description: A node selector term, associated with the corresponding weight.
                                          description: An empty preferred scheduling term matches all objects with
                                            implicit weight 0 (i.e. it's a
                                            no-op). A null preferred scheduling
                                            term matches no objects (i.e. is
                                            also a no-op).
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the affinity expressions specified by
                                          this field, but it may choose a node
                                          that violates one or more of the
                                          expressions. The node that is most
                                          preferred is the one with the greatest
                                          sum of weights, i.e. for each node
                                          that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node matches the corresponding
                                          matchExpressions; the node(s) with the
                                          highest sum are the most preferred.
                                    description: Node affinity is a group of node affinity scheduling rules.
                                  nodeSelector:
                                    type: object
                                    nullable: true
                                  podAntiAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - topologyKey
                                          properties:
                                            namespaces:
                                              type: array
                                              items:
                                                type: string
                                              description: namespaces specifies a static list of namespace names that the term
                                                applies to. The term is applied
                                                to the union of the namespaces
                                                listed in this field and the
                                                ones selected by
                                                namespaceSelector. null or empty
                                                namespaces list and null
                                                namespaceSelector means "this
                                                pod's namespace".
                                            topologyKey:
                                              type: string
                                              description: This pod should be co-located (affinity) or not co-located
                                                (anti-affinity) with the pods
                                                matching the labelSelector in
                                                the specified namespaces, where
                                                co-located is defined as running
                                                on a node whose value of the
                                                label with key topologyKey
                                                matches that of any node on
                                                which any of the selected pods
                                                is running. Empty topologyKey is
                                                not allowed.
                                            labelSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over a set of resources, in this case pods.
                                            namespaceSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over the set of namespaces that the term applies to.
                                                The term is applied to the union
                                                of the namespaces selected by
                                                this field and the ones listed
                                                in the namespaces field. null
                                                selector and null or empty
                                                namespaces list means "this
                                                pod's namespace". An empty
                                                selector ({}) matches all
                                                namespaces.
                                          description: Defines a set of pods (namely those matching the labelSelector
                                            relative to the given namespace(s))
                                            that this pod should be co-located
                                            (affinity) or not co-located
                                            (anti-affinity) with, where
                                            co-located is defined as running on
                                            a node whose value of the label with
                                            key <topologyKey> matches that of
                                            any node on which a pod of the set
                                            of pods is running
                                        description: If the anti-affinity requirements specified by this field are not
                                          met at scheduling time, the pod will
                                          not be scheduled onto the node. If the
                                          anti-affinity requirements specified
                                          by this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to a pod label update), the system may
                                          or may not try to eventually evict the
                                          pod from its node. When there are
                                          multiple elements, the lists of nodes
                                          corresponding to each podAffinityTerm
                                          are intersected, i.e. all terms must
                                          be satisfied.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - podAffinityTerm
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: weight associated with matching the corresponding podAffinityTerm,
                                                in the range 1-100.
                                            podAffinityTerm:
                                              type: object
                                              required:
                                                - topologyKey
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: namespaces specifies a static list of namespace names that the term
                                                    applies to. The term is
                                                    applied to the union of the
                                                    namespaces listed in this
                                                    field and the ones selected
                                                    by namespaceSelector. null
                                                    or empty namespaces list and
                                                    null namespaceSelector means
                                                    "this pod's namespace".
                                                topologyKey:
                                                  type: string
                                                  description: This pod should be co-located (affinity) or not co-located
                                                    (anti-affinity) with the
                                                    pods matching the
                                                    labelSelector in the
                                                    specified namespaces, where
                                                    co-located is defined as
                                                    running on a node whose
                                                    value of the label with key
                                                    topologyKey matches that of
                                                    any node on which any of the
                                                    selected pods is running.
                                                    Empty topologyKey is not
                                                    allowed.
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over a set of resources, in this case pods.
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over the set of namespaces that the term applies to.
                                                    The term is applied to the
                                                    union of the namespaces
                                                    selected by this field and
                                                    the ones listed in the
                                                    namespaces field. null
                                                    selector and null or empty
                                                    namespaces list means "this
                                                    pod's namespace". An empty
                                                    selector ({}) matches all
                                                    namespaces.
                                              description: Required. A pod affinity term, associated with the corresponding
                                                weight.
                                          description: The weights of all of the matched WeightedPodAffinityTerm fields
                                            are added per-node to find the most
                                            preferred node(s)
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the anti-affinity expressions
                                          specified by this field, but it may
                                          choose a node that violates one or
                                          more of the expressions. The node that
                                          is most preferred is the one with the
                                          greatest sum of weights, i.e. for each
                                          node that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling anti-affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node has pods which matches the
                                          corresponding podAffinityTerm; the
                                          node(s) with the highest sum are the
                                          most preferred.
                                    description: Pod anti affinity is a group of inter pod anti affinity scheduling
                                      rules.
                              resources:
                                type: object
                                default:
                                  cpu:
                                    max: null
                                    min: null
                                  memory:
                                    limit: null
                                    runtimeLimits: {}
                                  storage: {}
                                properties:
                                  cpu:
                                    type: object
                                    default:
                                      max: null
                                      min: null
                                    properties:
                                      max:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                      min:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                  memory:
                                    type: object
                                    properties:
                                      limit:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                      runtimeLimits:
                                        type: object
                                  storage:
                                    type: object
                              gracefulShutdownTimeout:
                                type: string
                                nullable: true
                                description: Time period Pods have to gracefully shut down, e.g. `30m`, `1h` or
                                  `2d`. Consult the operator documentation for
                                  details.
                          replicas:
                            type: integer
                            format: uint16
                            minimum: 0
                            nullable: true
                          selector:
                            type: object
                            nullable: true
                            properties:
                              matchLabels:
                                type: object
                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                  the matchLabels map is equivalent to an
                                  element of matchExpressions, whose key field
                                  is "key", the operator is "In", and the values
                                  array contains only "value". The requirements
                                  are ANDed.
                                additionalProperties:
                                  type: string
                              matchExpressions:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - key
                                    - operator
                                  properties:
                                    key:
                                      type: string
                                      description: key is the label key that the selector applies to.
                                    values:
                                      type: array
                                      items:
                                        type: string
                                      description: values is an array of string values. If the operator is In or
                                        NotIn, the values array must be
                                        non-empty. If the operator is Exists or
                                        DoesNotExist, the values array must be
                                        empty. This array is replaced during a
                                        strategic merge patch.
                                    operator:
                                      type: string
                                      description: operator represents a key's relationship to a set of values. Valid
                                        operators are In, NotIn, Exists and
                                        DoesNotExist.
                                  description: A label selector requirement is a selector that contains values, a
                                    key, and an operator that relates the key
                                    and values.
                                description: matchExpressions is a list of label selector requirements. The
                                  requirements are ANDed.
                            description: A label selector is a label query over a set of resources. The
                              result of matchLabels and matchExpressions are
                              ANDed. An empty label selector matches all
                              objects. A null label selector matches no objects.
                          cliOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: string
                          envOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: string
                          podOverrides:
                            type: object
                            default: {}
                            properties:
                              spec:
                                type: object
                                properties:
                                  os:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                  hostIPC:
                                    type: boolean
                                  hostPID:
                                    type: boolean
                                  volumes:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        fc:
                                          type: object
                                          properties:
                                            lun:
                                              type: integer
                                              format: int32
                                            wwids:
                                              type: array
                                              items:
                                                type: string
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            targetWWNs:
                                              type: array
                                              items:
                                                type: string
                                        csi:
                                          type: object
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeAttributes:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            nodePublishSecretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        nfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            server:
                                              type: string
                                            readOnly:
                                              type: boolean
                                        rbd:
                                          type: object
                                          properties:
                                            pool:
                                              type: string
                                            user:
                                              type: string
                                            image:
                                              type: string
                                            fsType:
                                              type: string
                                            keyring:
                                              type: string
                                            monitors:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        name:
                                          type: string
                                        iscsi:
                                          type: object
                                          properties:
                                            iqn:
                                              type: string
                                            lun:
                                              type: integer
                                              format: int32
                                            fsType:
                                              type: string
                                            portals:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            targetPortal:
                                              type: string
                                            initiatorName:
                                              type: string
                                            iscsiInterface:
                                              type: string
                                            chapAuthSession:
                                              type: boolean
                                            chapAuthDiscovery:
                                              type: boolean
                                        cephfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            user:
                                              type: string
                                            monitors:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            secretFile:
                                              type: string
                                        cinder:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        secret:
                                          type: object
                                          properties:
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                            optional:
                                              type: boolean
                                            secretName:
                                              type: string
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        flocker:
                                          type: object
                                          properties:
                                            datasetName:
                                              type: string
                                            datasetUUID:
                                              type: string
                                        gitRepo:
                                          type: object
                                          properties:
                                            revision:
                                              type: string
                                            directory:
                                              type: string
                                            repository:
                                              type: string
                                        quobyte:
                                          type: object
                                          properties:
                                            user:
                                              type: string
                                            group:
                                              type: string
                                            tenant:
                                              type: string
                                            volume:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            registry:
                                              type: string
                                        scaleIO:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            system:
                                              type: string
                                            gateway:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            sslEnabled:
                                              type: boolean
                                            volumeName:
                                              type: string
                                            storageMode:
                                              type: string
                                            storagePool:
                                              type: string
                                            protectionDomain:
                                              type: string
                                        emptyDir:
                                          type: object
                                          properties:
                                            medium:
                                              type: string
                                            sizeLimit:
                                              type: string
                                        hostPath:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            type:
                                              type: string
                                        azureDisk:
                                          type: object
                                          properties:
                                            kind:
                                              type: string
                                            fsType:
                                              type: string
                                            diskURI:
                                              type: string
                                            diskName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            cachingMode:
                                              type: string
                                        azureFile:
                                          type: object
                                          properties:
                                            readOnly:
                                              type: boolean
                                            shareName:
                                              type: string
                                            secretName:
                                              type: string
                                        configMap:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                            optional:
                                              type: boolean
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        ephemeral:
                                          type: object
                                          properties:
                                            volumeClaimTemplate:
                                              type: object
                                              properties:
                                                spec:
                                                  type: object
                                                  properties:
                                                    selector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    resources:
                                                      type: object
                                                      properties:
                                                        claims:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              name:
                                                                type: string
                                                        limits:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        requests:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                    dataSource:
                                                      type: object
                                                      properties:
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                        apiGroup:
                                                          type: string
                                                    volumeMode:
                                                      type: string
                                                    volumeName:
                                                      type: string
                                                    accessModes:
                                                      type: array
                                                      items:
                                                        type: string
                                                    dataSourceRef:
                                                      type: object
                                                      properties:
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                        apiGroup:
                                                          type: string
                                                        namespace:
                                                          type: string
                                                    storageClassName:
                                                      type: string
                                                metadata:
                                                  type: object
                                                  properties:
                                                    uid:
                                                      type: string
                                                    name:
                                                      type: string
                                                    labels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    selfLink:
                                                      type: string
                                                    namespace:
                                                      type: string
                                                    finalizers:
                                                      type: array
                                                      items:
                                                        type: string
                                                    generation:
                                                      type: integer
                                                      format: int64
                                                    annotations:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    generateName:
                                                      type: string
                                                    managedFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          time:
                                                            type: string
                                                            format: date-time
                                                          manager:
                                                            type: string
                                                          fieldsV1:
                                                            type: object
                                                          operation:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                          fieldsType:
                                                            type: string
                                                          subresource:
                                                            type: string
                                                    ownerReferences:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          uid:
                                                            type: string
                                                          kind:
                                                            type: string
                                                          name:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                          controller:
                                                            type: boolean
                                                          blockOwnerDeletion:
                                                            type: boolean
                                                    resourceVersion:
                                                      type: string
                                                    creationTimestamp:
                                                      type: string
                                                      format: date-time
                                                    deletionTimestamp:
                                                      type: string
                                                      format: date-time
                                                    deletionGracePeriodSeconds:
                                                      type: integer
                                                      format: int64
                                        glusterfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            endpoints:
                                              type: string
                                        projected:
                                          type: object
                                          properties:
                                            sources:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  secret:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                      optional:
                                                        type: boolean
                                                  configMap:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                      optional:
                                                        type: boolean
                                                  downwardAPI:
                                                    type: object
                                                    properties:
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                            fieldRef:
                                                              type: object
                                                              properties:
                                                                fieldPath:
                                                                  type: string
                                                                apiVersion:
                                                                  type: string
                                                            resourceFieldRef:
                                                              type: object
                                                              properties:
                                                                divisor:
                                                                  type: string
                                                                resource:
                                                                  type: string
                                                                containerName:
                                                                  type: string
                                                  serviceAccountToken:
                                                    type: object
                                                    properties:
                                                      path:
                                                        type: string
                                                      audience:
                                                        type: string
                                                      expirationSeconds:
                                                        type: integer
                                                        format: int64
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        storageos:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            volumeName:
                                              type: string
                                            volumeNamespace:
                                              type: string
                                        flexVolume:
                                          type: object
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            options:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        downwardAPI:
                                          type: object
                                          properties:
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        vsphereVolume:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            volumePath:
                                              type: string
                                            storagePolicyID:
                                              type: string
                                            storagePolicyName:
                                              type: string
                                        portworxVolume:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                        gcePersistentDisk:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            pdName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            partition:
                                              type: integer
                                              format: int32
                                        awsElasticBlockStore:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                            partition:
                                              type: integer
                                              format: int32
                                        photonPersistentDisk:
                                          type: object
                                          properties:
                                            pdID:
                                              type: string
                                            fsType:
                                              type: string
                                        persistentVolumeClaim:
                                          type: object
                                          properties:
                                            readOnly:
                                              type: boolean
                                            claimName:
                                              type: string
                                  affinity:
                                    type: object
                                    properties:
                                      podAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                topologyKey:
                                                  type: string
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                podAffinityTerm:
                                                  type: object
                                                  properties:
                                                    namespaces:
                                                      type: array
                                                      items:
                                                        type: string
                                                    topologyKey:
                                                      type: string
                                                    labelSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    namespaceSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                      nodeAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: object
                                            properties:
                                              nodeSelectorTerms:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    matchFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                preference:
                                                  type: object
                                                  properties:
                                                    matchFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                      podAntiAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                topologyKey:
                                                  type: string
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                podAffinityTerm:
                                                  type: object
                                                  properties:
                                                    namespaces:
                                                      type: array
                                                      items:
                                                        type: string
                                                    topologyKey:
                                                      type: string
                                                    labelSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    namespaceSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                  hostname:
                                    type: string
                                  nodeName:
                                    type: string
                                  overhead:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  priority:
                                    type: integer
                                    format: int32
                                  dnsConfig:
                                    type: object
                                    properties:
                                      options:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                      searches:
                                        type: array
                                        items:
                                          type: string
                                      nameservers:
                                        type: array
                                        items:
                                          type: string
                                  dnsPolicy:
                                    type: string
                                  hostUsers:
                                    type: boolean
                                  subdomain:
                                    type: string
                                  containers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  hostAliases:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        ip:
                                          type: string
                                        hostnames:
                                          type: array
                                          items:
                                            type: string
                                  hostNetwork:
                                    type: boolean
                                  tolerations:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        key:
                                          type: string
                                        value:
                                          type: string
                                        effect:
                                          type: string
                                        operator:
                                          type: string
                                        tolerationSeconds:
                                          type: integer
                                          format: int64
                                  nodeSelector:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  restartPolicy:
                                    type: string
                                  schedulerName:
                                    type: string
                                  initContainers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  readinessGates:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        conditionType:
                                          type: string
                                  resourceClaims:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        source:
                                          type: object
                                          properties:
                                            resourceClaimName:
                                              type: string
                                            resourceClaimTemplateName:
                                              type: string
                                  serviceAccount:
                                    type: string
                                  schedulingGates:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      fsGroup:
                                        type: integer
                                        format: int64
                                      sysctls:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      supplementalGroups:
                                        type: array
                                        items:
                                          type: integer
                                          format: int64
                                      fsGroupChangePolicy:
                                        type: string
                                  imagePullSecrets:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                  preemptionPolicy:
                                    type: string
                                  runtimeClassName:
                                    type: string
                                  priorityClassName:
                                    type: string
                                  setHostnameAsFQDN:
                                    type: boolean
                                  enableServiceLinks:
                                    type: boolean
                                  serviceAccountName:
                                    type: string
                                  ephemeralContainers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        targetContainerName:
                                          type: string
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  activeDeadlineSeconds:
                                    type: integer
                                    format: int64
                                  shareProcessNamespace:
                                    type: boolean
                                  topologySpreadConstraints:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        maxSkew:
                                          type: integer
                                          format: int32
                                        minDomains:
                                          type: integer
                                          format: int32
                                        topologyKey:
                                          type: string
                                        labelSelector:
                                          type: object
                                          properties:
                                            matchLabels:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            matchExpressions:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                  operator:
                                                    type: string
                                        matchLabelKeys:
                                          type: array
                                          items:
                                            type: string
                                        nodeTaintsPolicy:
                                          type: string
                                        whenUnsatisfiable:
                                          type: string
                                        nodeAffinityPolicy:
                                          type: string
                                  automountServiceAccountToken:
                                    type: boolean
                                  terminationGracePeriodSeconds:
                                    type: integer
                                    format: int64
                              metadata:
                                type: object
                                properties:
                                  uid:
                                    type: string
                                  name:
                                    type: string
                                  labels:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  selfLink:
                                    type: string
                                  namespace:
                                    type: string
                                  finalizers:
                                    type: array
                                    items:
                                      type: string
                                  generation:
                                    type: integer
                                    format: int64
                                  annotations:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  generateName:
                                    type: string
                                  managedFields:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        time:
                                          type: string
                                          format: date-time
                                        manager:
                                          type: string
                                        fieldsV1:
                                          type: object
                                        operation:
                                          type: string
                                        apiVersion:
                                          type: string
                                        fieldsType:
                                          type: string
                                        subresource:
                                          type: string
                                  ownerReferences:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        uid:
                                          type: string
                                        kind:
                                          type: string
                                        name:
                                          type: string
                                        apiVersion:
                                          type: string
                                        controller:
                                          type: boolean
                                        blockOwnerDeletion:
                                          type: boolean
                                  resourceVersion:
                                    type: string
                                  creationTimestamp:
                                    type: string
                                    format: date-time
                                  deletionTimestamp:
                                    type: string
                                    format: date-time
                                  deletionGracePeriodSeconds:
                                    type: integer
                                    format: int64
                            description: See PodTemplateSpec
                              (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core)
                              for more details
                          configOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: object
                              additionalProperties:
                                type: string
                    cliOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    envOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    podOverrides:
                      type: object
                      default: {}
                      properties:
                        spec:
                          type: object
                          properties:
                            os:
                              type: object
                              properties:
                                name:
                                  type: string
                            hostIPC:
                              type: boolean
                            hostPID:
                              type: boolean
                            volumes:
                              type: array
                              items:
                                type: object
                                properties:
                                  fc:
                                    type: object
                                    properties:
                                      lun:
                                        type: integer
                                        format: int32
                                      wwids:
                                        type: array
                                        items:
                                          type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      targetWWNs:
                                        type: array
                                        items:
                                          type: string
                                  csi:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeAttributes:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      nodePublishSecretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  nfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      server:
                                        type: string
                                      readOnly:
                                        type: boolean
                                  rbd:
                                    type: object
                                    properties:
                                      pool:
                                        type: string
                                      user:
                                        type: string
                                      image:
                                        type: string
                                      fsType:
                                        type: string
                                      keyring:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  name:
                                    type: string
                                  iscsi:
                                    type: object
                                    properties:
                                      iqn:
                                        type: string
                                      lun:
                                        type: integer
                                        format: int32
                                      fsType:
                                        type: string
                                      portals:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      targetPortal:
                                        type: string
                                      initiatorName:
                                        type: string
                                      iscsiInterface:
                                        type: string
                                      chapAuthSession:
                                        type: boolean
                                      chapAuthDiscovery:
                                        type: boolean
                                  cephfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      user:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      secretFile:
                                        type: string
                                  cinder:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  secret:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      secretName:
                                        type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  flocker:
                                    type: object
                                    properties:
                                      datasetName:
                                        type: string
                                      datasetUUID:
                                        type: string
                                  gitRepo:
                                    type: object
                                    properties:
                                      revision:
                                        type: string
                                      directory:
                                        type: string
                                      repository:
                                        type: string
                                  quobyte:
                                    type: object
                                    properties:
                                      user:
                                        type: string
                                      group:
                                        type: string
                                      tenant:
                                        type: string
                                      volume:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      registry:
                                        type: string
                                  scaleIO:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      system:
                                        type: string
                                      gateway:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      sslEnabled:
                                        type: boolean
                                      volumeName:
                                        type: string
                                      storageMode:
                                        type: string
                                      storagePool:
                                        type: string
                                      protectionDomain:
                                        type: string
                                  emptyDir:
                                    type: object
                                    properties:
                                      medium:
                                        type: string
                                      sizeLimit:
                                        type: string
                                  hostPath:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      type:
                                        type: string
                                  azureDisk:
                                    type: object
                                    properties:
                                      kind:
                                        type: string
                                      fsType:
                                        type: string
                                      diskURI:
                                        type: string
                                      diskName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      cachingMode:
                                        type: string
                                  azureFile:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      shareName:
                                        type: string
                                      secretName:
                                        type: string
                                  configMap:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  ephemeral:
                                    type: object
                                    properties:
                                      volumeClaimTemplate:
                                        type: object
                                        properties:
                                          spec:
                                            type: object
                                            properties:
                                              selector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              resources:
                                                type: object
                                                properties:
                                                  claims:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        name:
                                                          type: string
                                                  limits:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  requests:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                              dataSource:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                              volumeMode:
                                                type: string
                                              volumeName:
                                                type: string
                                              accessModes:
                                                type: array
                                                items:
                                                  type: string
                                              dataSourceRef:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                                  namespace:
                                                    type: string
                                              storageClassName:
                                                type: string
                                          metadata:
                                            type: object
                                            properties:
                                              uid:
                                                type: string
                                              name:
                                                type: string
                                              labels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              selfLink:
                                                type: string
                                              namespace:
                                                type: string
                                              finalizers:
                                                type: array
                                                items:
                                                  type: string
                                              generation:
                                                type: integer
                                                format: int64
                                              annotations:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              generateName:
                                                type: string
                                              managedFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    time:
                                                      type: string
                                                      format: date-time
                                                    manager:
                                                      type: string
                                                    fieldsV1:
                                                      type: object
                                                    operation:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    fieldsType:
                                                      type: string
                                                    subresource:
                                                      type: string
                                              ownerReferences:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    uid:
                                                      type: string
                                                    kind:
                                                      type: string
                                                    name:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    controller:
                                                      type: boolean
                                                    blockOwnerDeletion:
                                                      type: boolean
                                              resourceVersion:
                                                type: string
                                              creationTimestamp:
                                                type: string
                                                format: date-time
                                              deletionTimestamp:
                                                type: string
                                                format: date-time
                                              deletionGracePeriodSeconds:
                                                type: integer
                                                format: int64
                                  glusterfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      endpoints:
                                        type: string
                                  projected:
                                    type: object
                                    properties:
                                      sources:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            secret:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            configMap:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            downwardAPI:
                                              type: object
                                              properties:
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                      fieldRef:
                                                        type: object
                                                        properties:
                                                          fieldPath:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                      resourceFieldRef:
                                                        type: object
                                                        properties:
                                                          divisor:
                                                            type: string
                                                          resource:
                                                            type: string
                                                          containerName:
                                                            type: string
                                            serviceAccountToken:
                                              type: object
                                              properties:
                                                path:
                                                  type: string
                                                audience:
                                                  type: string
                                                expirationSeconds:
                                                  type: integer
                                                  format: int64
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  storageos:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      volumeName:
                                        type: string
                                      volumeNamespace:
                                        type: string
                                  flexVolume:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      options:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  downwardAPI:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  vsphereVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      volumePath:
                                        type: string
                                      storagePolicyID:
                                        type: string
                                      storagePolicyName:
                                        type: string
                                  portworxVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                  gcePersistentDisk:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      pdName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      partition:
                                        type: integer
                                        format: int32
                                  awsElasticBlockStore:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      partition:
                                        type: integer
                                        format: int32
                                  photonPersistentDisk:
                                    type: object
                                    properties:
                                      pdID:
                                        type: string
                                      fsType:
                                        type: string
                                  persistentVolumeClaim:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      claimName:
                                        type: string
                            affinity:
                              type: object
                              properties:
                                podAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                nodeAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: object
                                      properties:
                                        nodeSelectorTerms:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          preference:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                podAntiAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                            hostname:
                              type: string
                            nodeName:
                              type: string
                            overhead:
                              type: object
                              additionalProperties:
                                type: string
                            priority:
                              type: integer
                              format: int32
                            dnsConfig:
                              type: object
                              properties:
                                options:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                searches:
                                  type: array
                                  items:
                                    type: string
                                nameservers:
                                  type: array
                                  items:
                                    type: string
                            dnsPolicy:
                              type: string
                            hostUsers:
                              type: boolean
                            subdomain:
                              type: string
                            containers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            hostAliases:
                              type: array
                              items:
                                type: object
                                properties:
                                  ip:
                                    type: string
                                  hostnames:
                                    type: array
                                    items:
                                      type: string
                            hostNetwork:
                              type: boolean
                            tolerations:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                                  effect:
                                    type: string
                                  operator:
                                    type: string
                                  tolerationSeconds:
                                    type: integer
                                    format: int64
                            nodeSelector:
                              type: object
                              additionalProperties:
                                type: string
                            restartPolicy:
                              type: string
                            schedulerName:
                              type: string
                            initContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            readinessGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  conditionType:
                                    type: string
                            resourceClaims:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                                  source:
                                    type: object
                                    properties:
                                      resourceClaimName:
                                        type: string
                                      resourceClaimTemplateName:
                                        type: string
                            serviceAccount:
                              type: string
                            schedulingGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            securityContext:
                              type: object
                              properties:
                                fsGroup:
                                  type: integer
                                  format: int64
                                sysctls:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                runAsUser:
                                  type: integer
                                  format: int64
                                runAsGroup:
                                  type: integer
                                  format: int64
                                runAsNonRoot:
                                  type: boolean
                                seLinuxOptions:
                                  type: object
                                  properties:
                                    role:
                                      type: string
                                    type:
                                      type: string
                                    user:
                                      type: string
                                    level:
                                      type: string
                                seccompProfile:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                    localhostProfile:
                                      type: string
                                windowsOptions:
                                  type: object
                                  properties:
                                    hostProcess:
                                      type: boolean
                                    runAsUserName:
                                      type: string
                                    gmsaCredentialSpec:
                                      type: string
                                    gmsaCredentialSpecName:
                                      type: string
                                supplementalGroups:
                                  type: array
                                  items:
                                    type: integer
                                    format: int64
                                fsGroupChangePolicy:
                                  type: string
                            imagePullSecrets:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            preemptionPolicy:
                              type: string
                            runtimeClassName:
                              type: string
                            priorityClassName:
                              type: string
                            setHostnameAsFQDN:
                              type: boolean
                            enableServiceLinks:
                              type: boolean
                            serviceAccountName:
                              type: string
                            ephemeralContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  targetContainerName:
                                    type: string
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            activeDeadlineSeconds:
                              type: integer
                              format: int64
                            shareProcessNamespace:
                              type: boolean
                            topologySpreadConstraints:
                              type: array
                              items:
                                type: object
                                properties:
                                  maxSkew:
                                    type: integer
                                    format: int32
                                  minDomains:
                                    type: integer
                                    format: int32
                                  topologyKey:
                                    type: string
                                  labelSelector:
                                    type: object
                                    properties:
                                      matchLabels:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      matchExpressions:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                            operator:
                                              type: string
                                  matchLabelKeys:
                                    type: array
                                    items:
                                      type: string
                                  nodeTaintsPolicy:
                                    type: string
                                  whenUnsatisfiable:
                                    type: string
                                  nodeAffinityPolicy:
                                    type: string
                            automountServiceAccountToken:
                              type: boolean
                            terminationGracePeriodSeconds:
                              type: integer
                              format: int64
                        metadata:
                          type: object
                          properties:
                            uid:
                              type: string
                            name:
                              type: string
                            labels:
                              type: object
                              additionalProperties:
                                type: string
                            selfLink:
                              type: string
                            namespace:
                              type: string
                            finalizers:
                              type: array
                              items:
                                type: string
                            generation:
                              type: integer
                              format: int64
                            annotations:
                              type: object
                              additionalProperties:
                                type: string
                            generateName:
                              type: string
                            managedFields:
                              type: array
                              items:
                                type: object
                                properties:
                                  time:
                                    type: string
                                    format: date-time
                                  manager:
                                    type: string
                                  fieldsV1:
                                    type: object
                                  operation:
                                    type: string
                                  apiVersion:
                                    type: string
                                  fieldsType:
                                    type: string
                                  subresource:
                                    type: string
                            ownerReferences:
                              type: array
                              items:
                                type: object
                                properties:
                                  uid:
                                    type: string
                                  kind:
                                    type: string
                                  name:
                                    type: string
                                  apiVersion:
                                    type: string
                                  controller:
                                    type: boolean
                                  blockOwnerDeletion:
                                    type: boolean
                            resourceVersion:
                              type: string
                            creationTimestamp:
                              type: string
                              format: date-time
                            deletionTimestamp:
                              type: string
                              format: date-time
                            deletionGracePeriodSeconds:
                              type: integer
                              format: int64
                      description: See PodTemplateSpec
                        (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core)
                        for more details
                    configOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: object
                        additionalProperties:
                          type: string
                  description: This struct represents a role - e.g. HDFS datanodes or Trino
                    workers. It has a [`HashMap`] containing all the roleGroups
                    that are part of this role. Additionally, there is a
                    `config`, which is configurable at the role *and* roleGroup
                    level. Everything at roleGroup level is merged on top of
                    what is configured on role level using the [`Merge`] trait.
                    There is also a second form of config, which can only be
                    configured at role level, the `roleConfig`.
                clusterConfig:
                  type: object
                  default:
                    dagsGitSync: []
                    listenerClass: cluster-internal
                    authentication: []
                    credentialsSecret: ""
                  required:
                    - credentialsSecret
                  properties:
                    volumes:
                      type: array
                      items:
                        type: object
                        required:
                          - name
                        properties:
                          fc:
                            type: object
                            properties:
                              lun:
                                type: integer
                                format: int32
                                description: "lun is Optional: FC target lun number"
                              wwids:
                                type: array
                                items:
                                  type: string
                                description: "wwids Optional: FC volume world wide identifiers (wwids) Either
                                  wwids or combination of targetWWNs and lun
                                  must be set, but not both simultaneously."
                              fsType:
                                type: string
                                description: fsType is the filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system. Ex.
                                  "ext4", "xfs", "ntfs". Implicitly inferred to
                                  be "ext4" if unspecified.
                              readOnly:
                                type: boolean
                                description: "readOnly is Optional: Defaults to false (read/write). ReadOnly
                                  here will force the ReadOnly setting in
                                  VolumeMounts."
                              targetWWNs:
                                type: array
                                items:
                                  type: string
                                description: "targetWWNs is Optional: FC target worldwide names (WWNs)"
                            description: fc represents a Fibre Channel resource that is attached to a
                              kubelet's host machine and then exposed to the
                              pod.
                          csi:
                            type: object
                            required:
                              - driver
                            properties:
                              driver:
                                type: string
                                description: driver is the name of the CSI driver that handles this volume.
                                  Consult with your admin for the correct name
                                  as registered in the cluster.
                              fsType:
                                type: string
                                description: fsType to mount. Ex. "ext4", "xfs", "ntfs". If not provided, the
                                  empty value is passed to the associated CSI
                                  driver which will determine the default
                                  filesystem to apply.
                              readOnly:
                                type: boolean
                                description: readOnly specifies a read-only configuration for the volume.
                                  Defaults to false (read/write).
                              volumeAttributes:
                                type: object
                                description: volumeAttributes stores driver-specific properties that are passed
                                  to the CSI driver. Consult your driver's
                                  documentation for supported values.
                                additionalProperties:
                                  type: string
                              nodePublishSecretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: nodePublishSecretRef is a reference to the secret object containing
                                  sensitive information to pass to the CSI
                                  driver to complete the CSI NodePublishVolume
                                  and NodeUnpublishVolume calls. This field is
                                  optional, and  may be empty if no secret is
                                  required. If the secret object contains more
                                  than one secret, all secret references are
                                  passed.
                            description: csi (Container Storage Interface) represents ephemeral storage that
                              is handled by certain external CSI drivers (Beta
                              feature).
                          nfs:
                            type: object
                            required:
                              - path
                              - server
                            properties:
                              path:
                                type: string
                                description: "path that is exported by the NFS server. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#nfs"
                              server:
                                type: string
                                description: "server is the hostname or IP address of the NFS server. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#nfs"
                              readOnly:
                                type: boolean
                                description: "readOnly here will force the NFS export to be mounted with
                                  read-only permissions. Defaults to false. More
                                  info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#nfs"
                            description: "nfs represents an NFS mount on the host that shares a pod's
                              lifetime More info:
                              https://kubernetes.io/docs/concepts/storage/volum\
                              es#nfs"
                          rbd:
                            type: object
                            required:
                              - image
                              - monitors
                            properties:
                              pool:
                                type: string
                                description: "pool is the rados pool name. Default is rbd. More info:
                                  https://examples.k8s.io/volumes/rbd/README.md\
                                  #how-to-use-it"
                              user:
                                type: string
                                description: "user is the rados user name. Default is admin. More info:
                                  https://examples.k8s.io/volumes/rbd/README.md\
                                  #how-to-use-it"
                              image:
                                type: string
                                description: "image is the rados image name. More info:
                                  https://examples.k8s.io/volumes/rbd/README.md\
                                  #how-to-use-it"
                              fsType:
                                type: string
                                description: 'fsType is the filesystem type of the volume that you want to
                                  mount. Tip: Ensure that the filesystem type is
                                  supported by the host operating system.
                                  Examples: "ext4", "xfs", "ntfs". Implicitly
                                  inferred to be "ext4" if unspecified. More
                                  info:
                                  https://kubernetes.io/docs/concepts/storage/volumes#rbd'
                              keyring:
                                type: string
                                description: "keyring is the path to key ring for RBDUser. Default is
                                  /etc/ceph/keyring. More info:
                                  https://examples.k8s.io/volumes/rbd/README.md\
                                  #how-to-use-it"
                              monitors:
                                type: array
                                items:
                                  type: string
                                description: "monitors is a collection of Ceph monitors. More info:
                                  https://examples.k8s.io/volumes/rbd/README.md\
                                  #how-to-use-it"
                              readOnly:
                                type: boolean
                                description: "readOnly here will force the ReadOnly setting in VolumeMounts.
                                  Defaults to false. More info:
                                  https://examples.k8s.io/volumes/rbd/README.md\
                                  #how-to-use-it"
                              secretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: "secretRef is name of the authentication secret for RBDUser. If
                                  provided overrides keyring. Default is nil.
                                  More info:
                                  https://examples.k8s.io/volumes/rbd/README.md\
                                  #how-to-use-it"
                            description: "rbd represents a Rados Block Device mount on the host that shares
                              a pod's lifetime. More info:
                              https://examples.k8s.io/volumes/rbd/README.md"
                          name:
                            type: string
                            description: "name of the volume. Must be a DNS_LABEL and unique within the pod.
                              More info:
                              https://kubernetes.io/docs/concepts/overview/work\
                              ing-with-objects/names/#names"
                          iscsi:
                            type: object
                            required:
                              - iqn
                              - lun
                              - targetPortal
                            properties:
                              iqn:
                                type: string
                                description: iqn is the target iSCSI Qualified Name.
                              lun:
                                type: integer
                                format: int32
                                description: lun represents iSCSI Target Lun number.
                              fsType:
                                type: string
                                description: 'fsType is the filesystem type of the volume that you want to
                                  mount. Tip: Ensure that the filesystem type is
                                  supported by the host operating system.
                                  Examples: "ext4", "xfs", "ntfs". Implicitly
                                  inferred to be "ext4" if unspecified. More
                                  info:
                                  https://kubernetes.io/docs/concepts/storage/volumes#iscsi'
                              portals:
                                type: array
                                items:
                                  type: string
                                description: portals is the iSCSI Target Portal List. The portal is either an IP
                                  or ip_addr:port if the port is other than
                                  default (typically TCP ports 860 and 3260).
                              readOnly:
                                type: boolean
                                description: readOnly here will force the ReadOnly setting in VolumeMounts.
                                  Defaults to false.
                              secretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: secretRef is the CHAP Secret for iSCSI target and initiator
                                  authentication
                              targetPortal:
                                type: string
                                description: targetPortal is iSCSI Target Portal. The Portal is either an IP or
                                  ip_addr:port if the port is other than default
                                  (typically TCP ports 860 and 3260).
                              initiatorName:
                                type: string
                                description: initiatorName is the custom iSCSI Initiator Name. If initiatorName
                                  is specified with iscsiInterface
                                  simultaneously, new iSCSI interface <target
                                  portal>:<volume name> will be created for the
                                  connection.
                              iscsiInterface:
                                type: string
                                description: iscsiInterface is the interface Name that uses an iSCSI transport.
                                  Defaults to 'default' (tcp).
                              chapAuthSession:
                                type: boolean
                                description: chapAuthSession defines whether support iSCSI Session CHAP
                                  authentication
                              chapAuthDiscovery:
                                type: boolean
                                description: chapAuthDiscovery defines whether support iSCSI Discovery CHAP
                                  authentication
                            description: "iscsi represents an ISCSI Disk resource that is attached to a
                              kubelet's host machine and then exposed to the
                              pod. More info:
                              https://examples.k8s.io/volumes/iscsi/README.md"
                          cephfs:
                            type: object
                            required:
                              - monitors
                            properties:
                              path:
                                type: string
                                description: "path is Optional: Used as the mounted root, rather than the full
                                  Ceph tree, default is /"
                              user:
                                type: string
                                description: "user is optional: User is the rados user name, default is admin
                                  More info:
                                  https://examples.k8s.io/volumes/cephfs/README\
                                  .md#how-to-use-it"
                              monitors:
                                type: array
                                items:
                                  type: string
                                description: "monitors is Required: Monitors is a collection of Ceph monitors
                                  More info:
                                  https://examples.k8s.io/volumes/cephfs/README\
                                  .md#how-to-use-it"
                              readOnly:
                                type: boolean
                                description: "readOnly is Optional: Defaults to false (read/write). ReadOnly
                                  here will force the ReadOnly setting in
                                  VolumeMounts. More info:
                                  https://examples.k8s.io/volumes/cephfs/README\
                                  .md#how-to-use-it"
                              secretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: "secretRef is Optional: SecretRef is reference to the
                                  authentication secret for User, default is
                                  empty. More info:
                                  https://examples.k8s.io/volumes/cephfs/README\
                                  .md#how-to-use-it"
                              secretFile:
                                type: string
                                description: "secretFile is Optional: SecretFile is the path to key ring for
                                  User, default is /etc/ceph/user.secret More
                                  info:
                                  https://examples.k8s.io/volumes/cephfs/README\
                                  .md#how-to-use-it"
                            description: cephFS represents a Ceph FS mount on the host that shares a pod's
                              lifetime
                          cinder:
                            type: object
                            required:
                              - volumeID
                            properties:
                              fsType:
                                type: string
                                description: 'fsType is the filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system.
                                  Examples: "ext4", "xfs", "ntfs". Implicitly
                                  inferred to be "ext4" if unspecified. More
                                  info:
                                  https://examples.k8s.io/mysql-cinder-pd/README.md'
                              readOnly:
                                type: boolean
                                description: "readOnly defaults to false (read/write). ReadOnly here will force
                                  the ReadOnly setting in VolumeMounts. More
                                  info:
                                  https://examples.k8s.io/mysql-cinder-pd/READM\
                                  E.md"
                              volumeID:
                                type: string
                                description: "volumeID used to identify the volume in cinder. More info:
                                  https://examples.k8s.io/mysql-cinder-pd/READM\
                                  E.md"
                              secretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: "secretRef is optional: points to a secret object containing
                                  parameters used to connect to OpenStack."
                            description: "cinder represents a cinder volume attached and mounted on kubelets
                              host machine. More info:
                              https://examples.k8s.io/mysql-cinder-pd/README.md"
                          secret:
                            type: object
                            properties:
                              items:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - key
                                    - path
                                  properties:
                                    key:
                                      type: string
                                      description: key is the key to project.
                                    mode:
                                      type: integer
                                      format: int32
                                      description: "mode is Optional: mode bits used to set permissions on this file.
                                        Must be an octal value between 0000 and
                                        0777 or a decimal value between 0 and
                                        511. YAML accepts both octal and decimal
                                        values, JSON requires decimal values for
                                        mode bits. If not specified, the volume
                                        defaultMode will be used. This might be
                                        in conflict with other options that
                                        affect the file mode, like fsGroup, and
                                        the result can be other mode bits set."
                                    path:
                                      type: string
                                      description: path is the relative path of the file to map the key to. May not be
                                        an absolute path. May not contain the
                                        path element '..'. May not start with
                                        the string '..'.
                                  description: Maps a string key to a path within a volume.
                                description: items If unspecified, each key-value pair in the Data field of the
                                  referenced Secret will be projected into the
                                  volume as a file whose name is the key and
                                  content is the value. If specified, the listed
                                  keys will be projected into the specified
                                  paths, and unlisted keys will not be present.
                                  If a key is specified which is not present in
                                  the Secret, the volume setup will error unless
                                  it is marked optional. Paths must be relative
                                  and may not contain the '..' path or start
                                  with '..'.
                              optional:
                                type: boolean
                                description: optional field specify whether the Secret or its keys must be
                                  defined
                              secretName:
                                type: string
                                description: "secretName is the name of the secret in the pod's namespace to
                                  use. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#secret"
                              defaultMode:
                                type: integer
                                format: int32
                                description: "defaultMode is Optional: mode bits used to set permissions on
                                  created files by default. Must be an octal
                                  value between 0000 and 0777 or a decimal value
                                  between 0 and 511. YAML accepts both octal and
                                  decimal values, JSON requires decimal values
                                  for mode bits. Defaults to 0644. Directories
                                  within the path are not affected by this
                                  setting. This might be in conflict with other
                                  options that affect the file mode, like
                                  fsGroup, and the result can be other mode bits
                                  set."
                            description: "secret represents a secret that should populate this volume. More
                              info:
                              https://kubernetes.io/docs/concepts/storage/volum\
                              es#secret"
                          flocker:
                            type: object
                            properties:
                              datasetName:
                                type: string
                                description: datasetName is Name of the dataset stored as metadata -> name on
                                  the dataset for Flocker should be considered
                                  as deprecated
                              datasetUUID:
                                type: string
                                description: datasetUUID is the UUID of the dataset. This is unique identifier
                                  of a Flocker dataset
                            description: flocker represents a Flocker volume attached to a kubelet's host
                              machine. This depends on the Flocker control
                              service being running
                          gitRepo:
                            type: object
                            required:
                              - repository
                            properties:
                              revision:
                                type: string
                                description: revision is the commit hash for the specified revision.
                              directory:
                                type: string
                                description: directory is the target directory name. Must not contain or start
                                  with '..'.  If '.' is supplied, the volume
                                  directory will be the git
                                  repository.  Otherwise, if specified, the
                                  volume will contain the git repository in the
                                  subdirectory with the given name.
                              repository:
                                type: string
                                description: repository is the URL
                            description: "gitRepo represents a git repository at a particular revision.
                              DEPRECATED: GitRepo is deprecated. To provision a
                              container with a git repo, mount an EmptyDir into
                              an InitContainer that clones the repo using git,
                              then mount the EmptyDir into the Pod's container."
                          quobyte:
                            type: object
                            required:
                              - registry
                              - volume
                            properties:
                              user:
                                type: string
                                description: user to map volume access to Defaults to serivceaccount user
                              group:
                                type: string
                                description: group to map volume access to Default is no group
                              tenant:
                                type: string
                                description: tenant owning the given Quobyte volume in the Backend Used with
                                  dynamically provisioned Quobyte volumes, value
                                  is set by the plugin
                              volume:
                                type: string
                                description: volume is a string that references an already created Quobyte
                                  volume by name.
                              readOnly:
                                type: boolean
                                description: readOnly here will force the Quobyte volume to be mounted with
                                  read-only permissions. Defaults to false.
                              registry:
                                type: string
                                description: registry represents a single or multiple Quobyte Registry services
                                  specified as a string as host:port pair
                                  (multiple entries are separated with commas)
                                  which acts as the central registry for volumes
                            description: quobyte represents a Quobyte mount on the host that shares a pod's
                              lifetime
                          scaleIO:
                            type: object
                            required:
                              - gateway
                              - secretRef
                              - system
                            properties:
                              fsType:
                                type: string
                                description: fsType is the filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system. Ex.
                                  "ext4", "xfs", "ntfs". Default is "xfs".
                              system:
                                type: string
                                description: system is the name of the storage system as configured in ScaleIO.
                              gateway:
                                type: string
                                description: gateway is the host address of the ScaleIO API Gateway.
                              readOnly:
                                type: boolean
                                description: readOnly Defaults to false (read/write). ReadOnly here will force
                                  the ReadOnly setting in VolumeMounts.
                              secretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: secretRef references to the secret for ScaleIO user and other
                                  sensitive information. If this is not
                                  provided, Login operation will fail.
                              sslEnabled:
                                type: boolean
                                description: sslEnabled Flag enable/disable SSL communication with Gateway,
                                  default false
                              volumeName:
                                type: string
                                description: volumeName is the name of a volume already created in the ScaleIO
                                  system that is associated with this volume
                                  source.
                              storageMode:
                                type: string
                                description: storageMode indicates whether the storage for a volume should be
                                  ThickProvisioned or ThinProvisioned. Default
                                  is ThinProvisioned.
                              storagePool:
                                type: string
                                description: storagePool is the ScaleIO Storage Pool associated with the
                                  protection domain.
                              protectionDomain:
                                type: string
                                description: protectionDomain is the name of the ScaleIO Protection Domain for
                                  the configured storage.
                            description: scaleIO represents a ScaleIO persistent volume attached and mounted
                              on Kubernetes nodes.
                          emptyDir:
                            type: object
                            properties:
                              medium:
                                type: string
                                description: "medium represents what type of storage medium should back this
                                  directory. The default is \"\" which means to
                                  use the node's default medium. Must be an
                                  empty string (default) or Memory. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#emptydir"
                              sizeLimit:
                                type: string
                                description: "sizeLimit is the total amount of local storage required for this
                                  EmptyDir volume. The size limit is also
                                  applicable for memory medium. The maximum
                                  usage on memory medium EmptyDir would be the
                                  minimum value between the SizeLimit specified
                                  here and the sum of memory limits of all
                                  containers in a pod. The default is nil which
                                  means that the limit is undefined. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#emptydir"
                            description: "emptyDir represents a temporary directory that shares a pod's
                              lifetime. More info:
                              https://kubernetes.io/docs/concepts/storage/volum\
                              es#emptydir"
                          hostPath:
                            type: object
                            required:
                              - path
                            properties:
                              path:
                                type: string
                                description: "path of the directory on the host. If the path is a symlink, it
                                  will follow the link to the real path. More
                                  info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#hostpath"
                              type:
                                type: string
                                description: 'type for HostPath Volume Defaults to "" More info:
                                  https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
                            description: "hostPath represents a pre-existing file or directory on the host
                              machine that is directly exposed to the container.
                              This is generally used for system agents or other
                              privileged things that are allowed to see the host
                              machine. Most containers will NOT need this. More
                              info:
                              https://kubernetes.io/docs/concepts/storage/volum\
                              es#hostpath"
                          azureDisk:
                            type: object
                            required:
                              - diskName
                              - diskURI
                            properties:
                              kind:
                                type: string
                                description: "kind expected values are Shared: multiple blob disks per storage
                                  account  Dedicated: single blob disk per
                                  storage account  Managed: azure managed data
                                  disk (only in managed availability set).
                                  defaults to shared"
                              fsType:
                                type: string
                                description: fsType is Filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system. Ex.
                                  "ext4", "xfs", "ntfs". Implicitly inferred to
                                  be "ext4" if unspecified.
                              diskURI:
                                type: string
                                description: diskURI is the URI of data disk in the blob storage
                              diskName:
                                type: string
                                description: diskName is the Name of the data disk in the blob storage
                              readOnly:
                                type: boolean
                                description: readOnly Defaults to false (read/write). ReadOnly here will force
                                  the ReadOnly setting in VolumeMounts.
                              cachingMode:
                                type: string
                                description: "cachingMode is the Host Caching mode: None, Read Only, Read
                                  Write."
                            description: azureDisk represents an Azure Data Disk mount on the host and bind
                              mount to the pod.
                          azureFile:
                            type: object
                            required:
                              - secretName
                              - shareName
                            properties:
                              readOnly:
                                type: boolean
                                description: readOnly defaults to false (read/write). ReadOnly here will force
                                  the ReadOnly setting in VolumeMounts.
                              shareName:
                                type: string
                                description: shareName is the azure share Name
                              secretName:
                                type: string
                                description: secretName is the  name of secret that contains Azure Storage
                                  Account Name and Key
                            description: azureFile represents an Azure File Service mount on the host and
                              bind mount to the pod.
                          configMap:
                            type: object
                            properties:
                              name:
                                type: string
                                description: "Name of the referent. More info:
                                  https://kubernetes.io/docs/concepts/overview/\
                                  working-with-objects/names/#names"
                              items:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - key
                                    - path
                                  properties:
                                    key:
                                      type: string
                                      description: key is the key to project.
                                    mode:
                                      type: integer
                                      format: int32
                                      description: "mode is Optional: mode bits used to set permissions on this file.
                                        Must be an octal value between 0000 and
                                        0777 or a decimal value between 0 and
                                        511. YAML accepts both octal and decimal
                                        values, JSON requires decimal values for
                                        mode bits. If not specified, the volume
                                        defaultMode will be used. This might be
                                        in conflict with other options that
                                        affect the file mode, like fsGroup, and
                                        the result can be other mode bits set."
                                    path:
                                      type: string
                                      description: path is the relative path of the file to map the key to. May not be
                                        an absolute path. May not contain the
                                        path element '..'. May not start with
                                        the string '..'.
                                  description: Maps a string key to a path within a volume.
                                description: items if unspecified, each key-value pair in the Data field of the
                                  referenced ConfigMap will be projected into
                                  the volume as a file whose name is the key and
                                  content is the value. If specified, the listed
                                  keys will be projected into the specified
                                  paths, and unlisted keys will not be present.
                                  If a key is specified which is not present in
                                  the ConfigMap, the volume setup will error
                                  unless it is marked optional. Paths must be
                                  relative and may not contain the '..' path or
                                  start with '..'.
                              optional:
                                type: boolean
                                description: optional specify whether the ConfigMap or its keys must be defined
                              defaultMode:
                                type: integer
                                format: int32
                                description: "defaultMode is optional: mode bits used to set permissions on
                                  created files by default. Must be an octal
                                  value between 0000 and 0777 or a decimal value
                                  between 0 and 511. YAML accepts both octal and
                                  decimal values, JSON requires decimal values
                                  for mode bits. Defaults to 0644. Directories
                                  within the path are not affected by this
                                  setting. This might be in conflict with other
                                  options that affect the file mode, like
                                  fsGroup, and the result can be other mode bits
                                  set."
                            description: configMap represents a configMap that should populate this volume
                          ephemeral:
                            type: object
                            properties:
                              volumeClaimTemplate:
                                type: object
                                required:
                                  - spec
                                properties:
                                  spec:
                                    type: object
                                    properties:
                                      selector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: selector is a label query over volumes to consider for binding.
                                      resources:
                                        type: object
                                        properties:
                                          claims:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - name
                                              properties:
                                                name:
                                                  type: string
                                                  description: Name must match the name of one entry in pod.spec.resourceClaims of
                                                    the Pod where this field is
                                                    used. It makes that resource
                                                    available inside a
                                                    container.
                                              description: ResourceClaim references one entry in PodSpec.ResourceClaims.
                                            description: >-
                                              Claims lists the names of
                                              resources, defined in
                                              spec.resourceClaims, that are used
                                              by this container.


                                              This is an alpha field and
                                              requires enabling the
                                              DynamicResourceAllocation feature
                                              gate.


                                              This field is immutable. It can
                                              only be set for containers.
                                          limits:
                                            type: object
                                            description: "Limits describes the maximum amount of compute resources allowed.
                                              More info:
                                              https://kubernetes.io/docs/concep\
                                              ts/configuration/manage-resources\
                                              -containers/"
                                            additionalProperties:
                                              type: string
                                              description: >-
                                                Quantity is a fixed-point
                                                representation of a number. It
                                                provides convenient
                                                marshaling/unmarshaling in JSON
                                                and YAML, in addition to
                                                String() and AsInt64()
                                                accessors.


                                                The serialization format is:


                                                ``` <quantity>        ::=
                                                <signedNumber><suffix>

                                                	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                                <digit>           ::= 0 | 1 |
                                                ... | 9 <digits>          ::=
                                                <digit> | <digit><digits>
                                                <number>          ::= <digits> |
                                                <digits>.<digits> | <digits>. |
                                                .<digits> <sign>            ::=
                                                "+" | "-" <signedNumber>    ::=
                                                <number> | <sign><number>
                                                <suffix>          ::= <binarySI>
                                                | <decimalExponent> |
                                                <decimalSI>
                                                <binarySI>        ::= Ki | Mi |
                                                Gi | Ti | Pi | Ei

                                                	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                                <decimalSI>       ::= m | "" | k
                                                | M | G | T | P | E

                                                	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                                <decimalExponent> ::= "e"
                                                <signedNumber> | "E"
                                                <signedNumber> ```


                                                No matter which of the three
                                                exponent forms is used, no
                                                quantity may represent a number
                                                greater than 2^63-1 in
                                                magnitude, nor may it have more
                                                than 3 decimal places. Numbers
                                                larger or more precise will be
                                                capped or rounded up. (E.g.:
                                                0.1m will rounded up to 1m.)
                                                This may be extended in the
                                                future if we require larger or
                                                smaller quantities.


                                                When a Quantity is parsed from a
                                                string, it will remember the
                                                type of suffix it had, and will
                                                use the same type again when it
                                                is serialized.


                                                Before serializing, Quantity
                                                will be put in "canonical form".
                                                This means that Exponent/suffix
                                                will be adjusted up or down
                                                (with a corresponding increase
                                                or decrease in Mantissa) such
                                                that:


                                                - No precision is lost - No
                                                fractional digits will be
                                                emitted - The exponent (or
                                                suffix) is as large as possible.


                                                The sign will be omitted unless
                                                the number is negative.


                                                Examples:


                                                - 1.5 will be serialized as
                                                "1500m" - 1.5Gi will be
                                                serialized as "1536Mi"


                                                Note that the quantity will
                                                NEVER be internally represented
                                                by a floating point number. That
                                                is the whole point of this
                                                exercise.


                                                Non-canonical values will still
                                                parse as long as they are well
                                                formed, but will be re-emitted
                                                in their canonical form. (So
                                                always use canonical form, or
                                                don't diff.)


                                                This format is intended to make
                                                it difficult to use these
                                                numbers without writing some
                                                sort of special handling code in
                                                the hopes that that will cause
                                                implementors to also use a fixed
                                                point implementation.
                                          requests:
                                            type: object
                                            description: "Requests describes the minimum amount of compute resources
                                              required. If Requests is omitted
                                              for a container, it defaults to
                                              Limits if that is explicitly
                                              specified, otherwise to an
                                              implementation-defined value.
                                              Requests cannot exceed Limits.
                                              More info:
                                              https://kubernetes.io/docs/concep\
                                              ts/configuration/manage-resources\
                                              -containers/"
                                            additionalProperties:
                                              type: string
                                              description: >-
                                                Quantity is a fixed-point
                                                representation of a number. It
                                                provides convenient
                                                marshaling/unmarshaling in JSON
                                                and YAML, in addition to
                                                String() and AsInt64()
                                                accessors.


                                                The serialization format is:


                                                ``` <quantity>        ::=
                                                <signedNumber><suffix>

                                                	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                                <digit>           ::= 0 | 1 |
                                                ... | 9 <digits>          ::=
                                                <digit> | <digit><digits>
                                                <number>          ::= <digits> |
                                                <digits>.<digits> | <digits>. |
                                                .<digits> <sign>            ::=
                                                "+" | "-" <signedNumber>    ::=
                                                <number> | <sign><number>
                                                <suffix>          ::= <binarySI>
                                                | <decimalExponent> |
                                                <decimalSI>
                                                <binarySI>        ::= Ki | Mi |
                                                Gi | Ti | Pi | Ei

                                                	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                                <decimalSI>       ::= m | "" | k
                                                | M | G | T | P | E

                                                	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                                <decimalExponent> ::= "e"
                                                <signedNumber> | "E"
                                                <signedNumber> ```


                                                No matter which of the three
                                                exponent forms is used, no
                                                quantity may represent a number
                                                greater than 2^63-1 in
                                                magnitude, nor may it have more
                                                than 3 decimal places. Numbers
                                                larger or more precise will be
                                                capped or rounded up. (E.g.:
                                                0.1m will rounded up to 1m.)
                                                This may be extended in the
                                                future if we require larger or
                                                smaller quantities.


                                                When a Quantity is parsed from a
                                                string, it will remember the
                                                type of suffix it had, and will
                                                use the same type again when it
                                                is serialized.


                                                Before serializing, Quantity
                                                will be put in "canonical form".
                                                This means that Exponent/suffix
                                                will be adjusted up or down
                                                (with a corresponding increase
                                                or decrease in Mantissa) such
                                                that:


                                                - No precision is lost - No
                                                fractional digits will be
                                                emitted - The exponent (or
                                                suffix) is as large as possible.


                                                The sign will be omitted unless
                                                the number is negative.


                                                Examples:


                                                - 1.5 will be serialized as
                                                "1500m" - 1.5Gi will be
                                                serialized as "1536Mi"


                                                Note that the quantity will
                                                NEVER be internally represented
                                                by a floating point number. That
                                                is the whole point of this
                                                exercise.


                                                Non-canonical values will still
                                                parse as long as they are well
                                                formed, but will be re-emitted
                                                in their canonical form. (So
                                                always use canonical form, or
                                                don't diff.)


                                                This format is intended to make
                                                it difficult to use these
                                                numbers without writing some
                                                sort of special handling code in
                                                the hopes that that will cause
                                                implementors to also use a fixed
                                                point implementation.
                                        description: "resources represents the minimum resources the volume should have.
                                          If RecoverVolumeExpansionFailure
                                          feature is enabled users are allowed
                                          to specify resource requirements that
                                          are lower than previous value but must
                                          still be higher than capacity recorded
                                          in the status field of the claim. More
                                          info:
                                          https://kubernetes.io/docs/concepts/s\
                                          torage/persistent-volumes#resources"
                                      dataSource:
                                        type: object
                                        required:
                                          - kind
                                          - name
                                        properties:
                                          kind:
                                            type: string
                                            description: Kind is the type of resource being referenced
                                          name:
                                            type: string
                                            description: Name is the name of resource being referenced
                                          apiGroup:
                                            type: string
                                            description: APIGroup is the group for the resource being referenced. If
                                              APIGroup is not specified, the
                                              specified Kind must be in the core
                                              API group. For any other
                                              third-party types, APIGroup is
                                              required.
                                        description: "dataSource field can be used to specify either: * An existing
                                          VolumeSnapshot object
                                          (snapshot.storage.k8s.io/VolumeSnapsh\
                                          ot) * An existing PVC
                                          (PersistentVolumeClaim) If the
                                          provisioner or an external controller
                                          can support the specified data source,
                                          it will create a new volume based on
                                          the contents of the specified data
                                          source. When the AnyVolumeDataSource
                                          feature gate is enabled, dataSource
                                          contents will be copied to
                                          dataSourceRef, and dataSourceRef
                                          contents will be copied to dataSource
                                          when dataSourceRef.namespace is not
                                          specified. If the namespace is
                                          specified, then dataSourceRef will not
                                          be copied to dataSource."
                                      volumeMode:
                                        type: string
                                        description: volumeMode defines what type of volume is required by the claim.
                                          Value of Filesystem is implied when
                                          not included in claim spec.
                                      volumeName:
                                        type: string
                                        description: volumeName is the binding reference to the PersistentVolume backing
                                          this claim.
                                      accessModes:
                                        type: array
                                        items:
                                          type: string
                                        description: "accessModes contains the desired access modes the volume should
                                          have. More info:
                                          https://kubernetes.io/docs/concepts/s\
                                          torage/persistent-volumes#access-mode\
                                          s-1"
                                      dataSourceRef:
                                        type: object
                                        required:
                                          - kind
                                          - name
                                        properties:
                                          kind:
                                            type: string
                                            description: Kind is the type of resource being referenced
                                          name:
                                            type: string
                                            description: Name is the name of resource being referenced
                                          apiGroup:
                                            type: string
                                            description: APIGroup is the group for the resource being referenced. If
                                              APIGroup is not specified, the
                                              specified Kind must be in the core
                                              API group. For any other
                                              third-party types, APIGroup is
                                              required.
                                          namespace:
                                            type: string
                                            description: Namespace is the namespace of resource being referenced Note that
                                              when a namespace is specified, a
                                              gateway.networking.k8s.io/ReferenceGrant
                                              object is required in the referent
                                              namespace to allow that
                                              namespace's owner to accept the
                                              reference. See the ReferenceGrant
                                              documentation for details. (Alpha)
                                              This field requires the
                                              CrossNamespaceVolumeDataSource
                                              feature gate to be enabled.
                                        description: >-
                                          dataSourceRef specifies the object
                                          from which to populate the volume with
                                          data, if a non-empty volume is
                                          desired. This may be any object from a
                                          non-empty API group (non core object)
                                          or a PersistentVolumeClaim object.
                                          When this field is specified, volume
                                          binding will only succeed if the type
                                          of the specified object matches some
                                          installed volume populator or dynamic
                                          provisioner. This field will replace
                                          the functionality of the dataSource
                                          field and as such if both fields are
                                          non-empty, they must have the same
                                          value. For backwards compatibility,
                                          when namespace isn't specified in
                                          dataSourceRef, both fields (dataSource
                                          and dataSourceRef) will be set to the
                                          same value automatically if one of
                                          them is empty and the other is
                                          non-empty. When namespace is specified
                                          in dataSourceRef, dataSource isn't set
                                          to the same value and must be empty.
                                          There are three important differences
                                          between dataSource and dataSourceRef:
                                          * While dataSource only allows two
                                          specific types of objects,
                                          dataSourceRef
                                            allows any non-core object, as well as PersistentVolumeClaim objects.
                                          * While dataSource ignores disallowed
                                          values (dropping them), dataSourceRef
                                            preserves all values, and generates an error if a disallowed value is
                                            specified.
                                          * While dataSource only allows local
                                          objects, dataSourceRef allows objects
                                            in any namespaces.
                                          (Beta) Using this field requires the
                                          AnyVolumeDataSource feature gate to be
                                          enabled. (Alpha) Using the namespace
                                          field of dataSourceRef requires the
                                          CrossNamespaceVolumeDataSource feature
                                          gate to be enabled.
                                      storageClassName:
                                        type: string
                                        description: "storageClassName is the name of the StorageClass required by the
                                          claim. More info:
                                          https://kubernetes.io/docs/concepts/s\
                                          torage/persistent-volumes#class-1"
                                    description: The specification for the PersistentVolumeClaim. The entire content
                                      is copied unchanged into the PVC that gets
                                      created from this template. The same
                                      fields as in a PersistentVolumeClaim are
                                      also valid here.
                                  metadata:
                                    type: object
                                    properties:
                                      uid:
                                        type: string
                                        description: |-
                                          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.

                                          Populated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
                                      name:
                                        type: string
                                        description: "Name must be unique within a namespace. Is required when creating
                                          resources, although some resources may
                                          allow a client to request the
                                          generation of an appropriate name
                                          automatically. Name is primarily
                                          intended for creation idempotence and
                                          configuration definition. Cannot be
                                          updated. More info:
                                          https://kubernetes.io/docs/concepts/o\
                                          verview/working-with-objects/names#na\
                                          mes"
                                      labels:
                                        type: object
                                        description: "Map of string keys and values that can be used to organize and
                                          categorize (scope and select) objects.
                                          May match selectors of replication
                                          controllers and services. More info:
                                          https://kubernetes.io/docs/concepts/o\
                                          verview/working-with-objects/labels"
                                        additionalProperties:
                                          type: string
                                      selfLink:
                                        type: string
                                        description: "Deprecated: selfLink is a legacy read-only field that is no longer
                                          populated by the system."
                                      namespace:
                                        type: string
                                        description: |-
                                          Namespace defines the space within which 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.

                                          Must be a DNS_LABEL. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces
                                      finalizers:
                                        type: array
                                        items:
                                          type: string
                                        description: Must be empty before the object is deleted from the registry. Each
                                          entry is an identifier for the
                                          responsible component that will remove
                                          the entry from the list. If the
                                          deletionTimestamp of the object is
                                          non-nil, entries in this list can only
                                          be removed. Finalizers may be
                                          processed and removed in any
                                          order.  Order is NOT enforced because
                                          it introduces significant risk of
                                          stuck finalizers. finalizers is a
                                          shared field, any actor with
                                          permission can reorder it. If the
                                          finalizer list is processed in order,
                                          then this can lead to a situation in
                                          which the component responsible for
                                          the first finalizer in the list is
                                          waiting for a signal (field value,
                                          external system, or other) produced by
                                          a component responsible for a
                                          finalizer later in the list, resulting
                                          in a deadlock. Without enforced
                                          ordering finalizers are free to order
                                          amongst themselves and are not
                                          vulnerable to ordering changes in the
                                          list.
                                      generation:
                                        type: integer
                                        format: int64
                                        description: A sequence number representing a specific generation of the desired
                                          state. Populated by the system.
                                          Read-only.
                                      annotations:
                                        type: object
                                        description: "Annotations is an unstructured key value map stored with a
                                          resource that may be set by external
                                          tools to store and retrieve arbitrary
                                          metadata. They are not queryable and
                                          should be preserved when modifying
                                          objects. More info:
                                          https://kubernetes.io/docs/concepts/o\
                                          verview/working-with-objects/annotati\
                                          ons"
                                        additionalProperties:
                                          type: string
                                      generateName:
                                        type: string
                                        description: |-
                                          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.

                                          If this field is specified and the generated name exists, the server will return a 409.

                                          Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
                                      managedFields:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            time:
                                              type: string
                                              format: date-time
                                              description: Time is the timestamp of when the ManagedFields entry was added.
                                                The timestamp will also be
                                                updated if a field is added, the
                                                manager changes any of the owned
                                                fields value or removes a field.
                                                The timestamp does not update
                                                when a field is removed from the
                                                entry because another manager
                                                took it over.
                                            manager:
                                              type: string
                                              description: Manager is an identifier of the workflow managing these fields.
                                            fieldsV1:
                                              type: object
                                              description: FieldsV1 holds the first JSON version format as described in the
                                                "FieldsV1" type.
                                            operation:
                                              type: string
                                              description: Operation is the type of operation which lead to this
                                                ManagedFieldsEntry being
                                                created. The only valid values
                                                for this field are 'Apply' and
                                                'Update'.
                                            apiVersion:
                                              type: string
                                              description: APIVersion defines the version of this resource that this field set
                                                applies to. The format is
                                                "group/version" just like the
                                                top-level APIVersion field. It
                                                is necessary to track the
                                                version of a field set because
                                                it cannot be automatically
                                                converted.
                                            fieldsType:
                                              type: string
                                              description: 'FieldsType is the discriminator for the different fields format
                                                and version. There is currently
                                                only one possible value:
                                                "FieldsV1"'
                                            subresource:
                                              type: string
                                              description: Subresource is the name of the subresource used to update that
                                                object, or empty string if the
                                                object was updated through the
                                                main resource. The value of this
                                                field is used to distinguish
                                                between managers, even if they
                                                share the same name. For
                                                example, a status update will be
                                                distinct from a regular update
                                                using the same manager name.
                                                Note that the APIVersion field
                                                is not related to the
                                                Subresource field and it always
                                                corresponds to the version of
                                                the main resource.
                                          description: ManagedFieldsEntry is a workflow-id, a FieldSet and the group
                                            version of the resource that the
                                            fieldset applies to.
                                        description: ManagedFields maps workflow-id and version to the set of fields
                                          that are managed by that workflow.
                                          This is mostly for internal
                                          housekeeping, and users typically
                                          shouldn't need to set or understand
                                          this field. A workflow can be the
                                          user's name, a controller's name, or
                                          the name of a specific apply path like
                                          "ci-cd". The set of fields is always
                                          in the version that the workflow used
                                          when modifying the object.
                                      ownerReferences:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - apiVersion
                                            - kind
                                            - name
                                            - uid
                                          properties:
                                            uid:
                                              type: string
                                              description: "UID of the referent. More info:
                                                https://kubernetes.io/docs/concept\
                                                s/overview/working-with-objects\
                                                /names#uids"
                                            kind:
                                              type: string
                                              description: "Kind of the referent. More info:
                                                https://git.k8s.io/community/cont\
                                                ributors/devel/sig-architecture\
                                                /api-conventions.md#types-kinds"
                                            name:
                                              type: string
                                              description: "Name of the referent. More info:
                                                https://kubernetes.io/docs/concep\
                                                ts/overview/working-with-object\
                                                s/names#names"
                                            apiVersion:
                                              type: string
                                              description: API version of the referent.
                                            controller:
                                              type: boolean
                                              description: If true, this reference points to the managing controller.
                                            blockOwnerDeletion:
                                              type: boolean
                                              description: If true, AND if the owner has the "foregroundDeletion" finalizer,
                                                then the owner cannot be deleted
                                                from the key-value store until
                                                this reference is removed. See
                                                https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion
                                                for how the garbage collector
                                                interacts with this field and
                                                enforces the foreground
                                                deletion. Defaults to false. To
                                                set this field, a user needs
                                                "delete" permission of the
                                                owner, otherwise 422
                                                (Unprocessable Entity) will be
                                                returned.
                                          description: OwnerReference contains enough information to let you identify an
                                            owning object. An owning object must
                                            be in the same namespace as the
                                            dependent, or be cluster-scoped, so
                                            there is no namespace field.
                                        description: List of objects depended by this object. If ALL objects in the list
                                          have been deleted, this object will be
                                          garbage collected. If this object is
                                          managed by a controller, then an entry
                                          in this list will point to this
                                          controller, with the controller field
                                          set to true. There cannot be more than
                                          one managing controller.
                                      resourceVersion:
                                        type: string
                                        description: |-
                                          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.

                                          Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
                                      creationTimestamp:
                                        type: string
                                        format: date-time
                                        description: |-
                                          CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.

                                          Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
                                      deletionTimestamp:
                                        type: string
                                        format: date-time
                                        description: |-
                                          DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.

                                          Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
                                      deletionGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                        description: Number of seconds allowed for this object to gracefully terminate
                                          before it will be removed from the
                                          system. Only set when
                                          deletionTimestamp is also set. May
                                          only be shortened. Read-only.
                                    description: May contain labels and annotations that will be copied into the PVC
                                      when creating it. No other fields are
                                      allowed and will be rejected during
                                      validation.
                                description: >-
                                  Will be used to create a stand-alone PVC to
                                  provision the volume. The pod in which this
                                  EphemeralVolumeSource is embedded will be the
                                  owner of the PVC, i.e. the PVC will be deleted
                                  together with the pod.  The name of the PVC
                                  will be `<pod name>-<volume name>` where
                                  `<volume name>` is the name from the
                                  `PodSpec.Volumes` array entry. Pod validation
                                  will reject the pod if the concatenated name
                                  is not valid for a PVC (for example, too
                                  long).


                                  An existing PVC with that name that is not
                                  owned by the pod will *not* be used for the
                                  pod to avoid using an unrelated volume by
                                  mistake. Starting the pod is then blocked
                                  until the unrelated PVC is removed. If such a
                                  pre-created PVC is meant to be used by the
                                  pod, the PVC has to updated with an owner
                                  reference to the pod once the pod exists.
                                  Normally this should not be necessary, but it
                                  may be useful when manually reconstructing a
                                  broken cluster.


                                  This field is read-only and no changes will be
                                  made by Kubernetes to the PVC after it has
                                  been created.


                                  Required, must not be nil.
                            description: >-
                              ephemeral represents a volume that is handled by a
                              cluster storage driver. The volume's lifecycle is
                              tied to the pod that defines it - it will be
                              created before the pod starts, and deleted when
                              the pod is removed.


                              Use this if: a) the volume is only needed while
                              the pod runs, b) features of normal volumes like
                              restoring from snapshot or capacity
                                 tracking are needed,
                              c) the storage driver is specified through a
                              storage class, and d) the storage driver supports
                              dynamic volume provisioning through
                                 a PersistentVolumeClaim (see EphemeralVolumeSource for more
                                 information on the connection between this volume type
                                 and PersistentVolumeClaim).

                              Use PersistentVolumeClaim or one of the
                              vendor-specific APIs for volumes that persist for
                              longer than the lifecycle of an individual pod.


                              Use CSI for light-weight local ephemeral volumes
                              if the CSI driver is meant to be used that way -
                              see the documentation of the driver for more
                              information.


                              A pod can use both types of ephemeral volumes and
                              persistent volumes at the same time.
                          glusterfs:
                            type: object
                            required:
                              - endpoints
                              - path
                            properties:
                              path:
                                type: string
                                description: "path is the Glusterfs volume path. More info:
                                  https://examples.k8s.io/volumes/glusterfs/REA\
                                  DME.md#create-a-pod"
                              readOnly:
                                type: boolean
                                description: "readOnly here will force the Glusterfs volume to be mounted with
                                  read-only permissions. Defaults to false. More
                                  info:
                                  https://examples.k8s.io/volumes/glusterfs/REA\
                                  DME.md#create-a-pod"
                              endpoints:
                                type: string
                                description: "endpoints is the endpoint name that details Glusterfs topology.
                                  More info:
                                  https://examples.k8s.io/volumes/glusterfs/REA\
                                  DME.md#create-a-pod"
                            description: "glusterfs represents a Glusterfs mount on the host that shares a
                              pod's lifetime. More info:
                              https://examples.k8s.io/volumes/glusterfs/README.\
                              md"
                          projected:
                            type: object
                            properties:
                              sources:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    secret:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                          description: "Name of the referent. More info:
                                            https://kubernetes.io/docs/concepts\
                                            /overview/working-with-objects/name\
                                            s/#names"
                                        items:
                                          type: array
                                          items:
                                            type: object
                                            required:
                                              - key
                                              - path
                                            properties:
                                              key:
                                                type: string
                                                description: key is the key to project.
                                              mode:
                                                type: integer
                                                format: int32
                                                description: "mode is Optional: mode bits used to set permissions on this file.
                                                  Must be an octal value between
                                                  0000 and 0777 or a decimal
                                                  value between 0 and 511. YAML
                                                  accepts both octal and decimal
                                                  values, JSON requires decimal
                                                  values for mode bits. If not
                                                  specified, the volume
                                                  defaultMode will be used. This
                                                  might be in conflict with
                                                  other options that affect the
                                                  file mode, like fsGroup, and
                                                  the result can be other mode
                                                  bits set."
                                              path:
                                                type: string
                                                description: path is the relative path of the file to map the key to. May not be
                                                  an absolute path. May not
                                                  contain the path element '..'.
                                                  May not start with the string
                                                  '..'.
                                            description: Maps a string key to a path within a volume.
                                          description: items if unspecified, each key-value pair in the Data field of the
                                            referenced Secret will be projected
                                            into the volume as a file whose name
                                            is the key and content is the value.
                                            If specified, the listed keys will
                                            be projected into the specified
                                            paths, and unlisted keys will not be
                                            present. If a key is specified which
                                            is not present in the Secret, the
                                            volume setup will error unless it is
                                            marked optional. Paths must be
                                            relative and may not contain the
                                            '..' path or start with '..'.
                                        optional:
                                          type: boolean
                                          description: optional field specify whether the Secret or its key must be
                                            defined
                                      description: secret information about the secret data to project
                                    configMap:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                          description: "Name of the referent. More info:
                                            https://kubernetes.io/docs/concepts\
                                            /overview/working-with-objects/name\
                                            s/#names"
                                        items:
                                          type: array
                                          items:
                                            type: object
                                            required:
                                              - key
                                              - path
                                            properties:
                                              key:
                                                type: string
                                                description: key is the key to project.
                                              mode:
                                                type: integer
                                                format: int32
                                                description: "mode is Optional: mode bits used to set permissions on this file.
                                                  Must be an octal value between
                                                  0000 and 0777 or a decimal
                                                  value between 0 and 511. YAML
                                                  accepts both octal and decimal
                                                  values, JSON requires decimal
                                                  values for mode bits. If not
                                                  specified, the volume
                                                  defaultMode will be used. This
                                                  might be in conflict with
                                                  other options that affect the
                                                  file mode, like fsGroup, and
                                                  the result can be other mode
                                                  bits set."
                                              path:
                                                type: string
                                                description: path is the relative path of the file to map the key to. May not be
                                                  an absolute path. May not
                                                  contain the path element '..'.
                                                  May not start with the string
                                                  '..'.
                                            description: Maps a string key to a path within a volume.
                                          description: items if unspecified, each key-value pair in the Data field of the
                                            referenced ConfigMap will be
                                            projected into the volume as a file
                                            whose name is the key and content is
                                            the value. If specified, the listed
                                            keys will be projected into the
                                            specified paths, and unlisted keys
                                            will not be present. If a key is
                                            specified which is not present in
                                            the ConfigMap, the volume setup will
                                            error unless it is marked optional.
                                            Paths must be relative and may not
                                            contain the '..' path or start with
                                            '..'.
                                        optional:
                                          type: boolean
                                          description: optional specify whether the ConfigMap or its keys must be defined
                                      description: configMap information about the configMap data to project
                                    downwardAPI:
                                      type: object
                                      properties:
                                        items:
                                          type: array
                                          items:
                                            type: object
                                            required:
                                              - path
                                            properties:
                                              mode:
                                                type: integer
                                                format: int32
                                                description: "Optional: mode bits used to set permissions on this file, must be
                                                  an octal value between 0000
                                                  and 0777 or a decimal value
                                                  between 0 and 511. YAML
                                                  accepts both octal and decimal
                                                  values, JSON requires decimal
                                                  values for mode bits. If not
                                                  specified, the volume
                                                  defaultMode will be used. This
                                                  might be in conflict with
                                                  other options that affect the
                                                  file mode, like fsGroup, and
                                                  the result can be other mode
                                                  bits set."
                                              path:
                                                type: string
                                                description: "Required: Path is  the relative path name of the file to be
                                                  created. Must not be absolute
                                                  or contain the '..' path. Must
                                                  be utf-8 encoded. The first
                                                  item of the relative path must
                                                  not start with '..'"
                                              fieldRef:
                                                type: object
                                                required:
                                                  - fieldPath
                                                properties:
                                                  fieldPath:
                                                    type: string
                                                    description: Path of the field to select in the specified API version.
                                                  apiVersion:
                                                    type: string
                                                    description: Version of the schema the FieldPath is written in terms of,
                                                      defaults to "v1".
                                                description: "Required: Selects a field of the pod: only annotations, labels,
                                                  name and namespace are
                                                  supported."
                                              resourceFieldRef:
                                                type: object
                                                required:
                                                  - resource
                                                properties:
                                                  divisor:
                                                    type: string
                                                    description: Specifies the output format of the exposed resources, defaults to
                                                      "1"
                                                  resource:
                                                    type: string
                                                    description: "Required: resource to select"
                                                  containerName:
                                                    type: string
                                                    description: "Container name: required for volumes, optional for env vars"
                                                description: "Selects a resource of the container: only resources limits and
                                                  requests (limits.cpu,
                                                  limits.memory, requests.cpu
                                                  and requests.memory) are
                                                  currently supported."
                                            description: DownwardAPIVolumeFile represents information to create the file
                                              containing the pod field
                                          description: Items is a list of DownwardAPIVolume file
                                      description: downwardAPI information about the downwardAPI data to project
                                    serviceAccountToken:
                                      type: object
                                      required:
                                        - path
                                      properties:
                                        path:
                                          type: string
                                          description: path is the path relative to the mount point of the file to project
                                            the token into.
                                        audience:
                                          type: string
                                          description: audience is the intended audience of the token. A recipient of a
                                            token must identify itself with an
                                            identifier specified in the audience
                                            of the token, and otherwise should
                                            reject the token. The audience
                                            defaults to the identifier of the
                                            apiserver.
                                        expirationSeconds:
                                          type: integer
                                          format: int64
                                          description: expirationSeconds is the requested duration of validity of the
                                            service account token. As the token
                                            approaches expiration, the kubelet
                                            volume plugin will proactively
                                            rotate the service account token.
                                            The kubelet will start trying to
                                            rotate the token if the token is
                                            older than 80 percent of its time to
                                            live or if the token is older than
                                            24 hours.Defaults to 1 hour and must
                                            be at least 10 minutes.
                                      description: serviceAccountToken is information about the serviceAccountToken
                                        data to project
                                  description: Projection that may be projected along with other supported volume
                                    types
                                description: sources is the list of volume projections
                              defaultMode:
                                type: integer
                                format: int32
                                description: defaultMode are the mode bits used to set permissions on created
                                  files by default. Must be an octal value
                                  between 0000 and 0777 or a decimal value
                                  between 0 and 511. YAML accepts both octal and
                                  decimal values, JSON requires decimal values
                                  for mode bits. Directories within the path are
                                  not affected by this setting. This might be in
                                  conflict with other options that affect the
                                  file mode, like fsGroup, and the result can be
                                  other mode bits set.
                            description: projected items for all in one resources secrets, configmaps, and
                              downward API
                          storageos:
                            type: object
                            properties:
                              fsType:
                                type: string
                                description: fsType is the filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system. Ex.
                                  "ext4", "xfs", "ntfs". Implicitly inferred to
                                  be "ext4" if unspecified.
                              readOnly:
                                type: boolean
                                description: readOnly defaults to false (read/write). ReadOnly here will force
                                  the ReadOnly setting in VolumeMounts.
                              secretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: secretRef specifies the secret to use for obtaining the StorageOS
                                  API credentials.  If not specified, default
                                  values will be attempted.
                              volumeName:
                                type: string
                                description: volumeName is the human-readable name of the StorageOS
                                  volume.  Volume names are only unique within a
                                  namespace.
                              volumeNamespace:
                                type: string
                                description: volumeNamespace specifies the scope of the volume within
                                  StorageOS.  If no namespace is specified then
                                  the Pod's namespace will be used.  This allows
                                  the Kubernetes name scoping to be mirrored
                                  within StorageOS for tighter integration. Set
                                  VolumeName to any name to override the default
                                  behaviour. Set to "default" if you are not
                                  using namespaces within StorageOS. Namespaces
                                  that do not pre-exist within StorageOS will be
                                  created.
                            description: storageOS represents a StorageOS volume attached and mounted on
                              Kubernetes nodes.
                          flexVolume:
                            type: object
                            required:
                              - driver
                            properties:
                              driver:
                                type: string
                                description: driver is the name of the driver to use for this volume.
                              fsType:
                                type: string
                                description: fsType is the filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system. Ex.
                                  "ext4", "xfs", "ntfs". The default filesystem
                                  depends on FlexVolume script.
                              options:
                                type: object
                                description: "options is Optional: this field holds extra command options if
                                  any."
                                additionalProperties:
                                  type: string
                              readOnly:
                                type: boolean
                                description: "readOnly is Optional: defaults to false (read/write). ReadOnly
                                  here will force the ReadOnly setting in
                                  VolumeMounts."
                              secretRef:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: "Name of the referent. More info:
                                      https://kubernetes.io/docs/concepts/overv\
                                      iew/working-with-objects/names/#names"
                                description: "secretRef is Optional: secretRef is reference to the secret object
                                  containing sensitive information to pass to
                                  the plugin scripts. This may be empty if no
                                  secret object is specified. If the secret
                                  object contains more than one secret, all
                                  secrets are passed to the plugin scripts."
                            description: flexVolume represents a generic volume resource that is
                              provisioned/attached using an exec based plugin.
                          downwardAPI:
                            type: object
                            properties:
                              items:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - path
                                  properties:
                                    mode:
                                      type: integer
                                      format: int32
                                      description: "Optional: mode bits used to set permissions on this file, must be
                                        an octal value between 0000 and 0777 or
                                        a decimal value between 0 and 511. YAML
                                        accepts both octal and decimal values,
                                        JSON requires decimal values for mode
                                        bits. If not specified, the volume
                                        defaultMode will be used. This might be
                                        in conflict with other options that
                                        affect the file mode, like fsGroup, and
                                        the result can be other mode bits set."
                                    path:
                                      type: string
                                      description: "Required: Path is  the relative path name of the file to be
                                        created. Must not be absolute or contain
                                        the '..' path. Must be utf-8 encoded.
                                        The first item of the relative path must
                                        not start with '..'"
                                    fieldRef:
                                      type: object
                                      required:
                                        - fieldPath
                                      properties:
                                        fieldPath:
                                          type: string
                                          description: Path of the field to select in the specified API version.
                                        apiVersion:
                                          type: string
                                          description: Version of the schema the FieldPath is written in terms of,
                                            defaults to "v1".
                                      description: "Required: Selects a field of the pod: only annotations, labels,
                                        name and namespace are supported."
                                    resourceFieldRef:
                                      type: object
                                      required:
                                        - resource
                                      properties:
                                        divisor:
                                          type: string
                                          description: Specifies the output format of the exposed resources, defaults to
                                            "1"
                                        resource:
                                          type: string
                                          description: "Required: resource to select"
                                        containerName:
                                          type: string
                                          description: "Container name: required for volumes, optional for env vars"
                                      description: "Selects a resource of the container: only resources limits and
                                        requests (limits.cpu, limits.memory,
                                        requests.cpu and requests.memory) are
                                        currently supported."
                                  description: DownwardAPIVolumeFile represents information to create the file
                                    containing the pod field
                                description: Items is a list of downward API volume file
                              defaultMode:
                                type: integer
                                format: int32
                                description: "Optional: mode bits to use on created files by default. Must be a
                                  Optional: mode bits used to set permissions on
                                  created files by default. Must be an octal
                                  value between 0000 and 0777 or a decimal value
                                  between 0 and 511. YAML accepts both octal and
                                  decimal values, JSON requires decimal values
                                  for mode bits. Defaults to 0644. Directories
                                  within the path are not affected by this
                                  setting. This might be in conflict with other
                                  options that affect the file mode, like
                                  fsGroup, and the result can be other mode bits
                                  set."
                            description: downwardAPI represents downward API about the pod that should
                              populate this volume
                          vsphereVolume:
                            type: object
                            required:
                              - volumePath
                            properties:
                              fsType:
                                type: string
                                description: fsType is filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system. Ex.
                                  "ext4", "xfs", "ntfs". Implicitly inferred to
                                  be "ext4" if unspecified.
                              volumePath:
                                type: string
                                description: volumePath is the path that identifies vSphere volume vmdk
                              storagePolicyID:
                                type: string
                                description: storagePolicyID is the storage Policy Based Management (SPBM)
                                  profile ID associated with the
                                  StoragePolicyName.
                              storagePolicyName:
                                type: string
                                description: storagePolicyName is the storage Policy Based Management (SPBM)
                                  profile name.
                            description: vsphereVolume represents a vSphere volume attached and mounted on
                              kubelets host machine
                          portworxVolume:
                            type: object
                            required:
                              - volumeID
                            properties:
                              fsType:
                                type: string
                                description: fSType represents the filesystem type to mount Must be a filesystem
                                  type supported by the host operating system.
                                  Ex. "ext4", "xfs". Implicitly inferred to be
                                  "ext4" if unspecified.
                              readOnly:
                                type: boolean
                                description: readOnly defaults to false (read/write). ReadOnly here will force
                                  the ReadOnly setting in VolumeMounts.
                              volumeID:
                                type: string
                                description: volumeID uniquely identifies a Portworx volume
                            description: portworxVolume represents a portworx volume attached and mounted on
                              kubelets host machine
                          gcePersistentDisk:
                            type: object
                            required:
                              - pdName
                            properties:
                              fsType:
                                type: string
                                description: 'fsType is filesystem type of the volume that you want to mount.
                                  Tip: Ensure that the filesystem type is
                                  supported by the host operating system.
                                  Examples: "ext4", "xfs", "ntfs". Implicitly
                                  inferred to be "ext4" if unspecified. More
                                  info:
                                  https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
                              pdName:
                                type: string
                                description: "pdName is unique name of the PD resource in GCE. Used to identify
                                  the disk in GCE. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#gcepersistentdisk"
                              readOnly:
                                type: boolean
                                description: "readOnly here will force the ReadOnly setting in VolumeMounts.
                                  Defaults to false. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#gcepersistentdisk"
                              partition:
                                type: integer
                                format: int32
                                description: 'partition is the partition in the volume that you want to mount.
                                  If omitted, the default is to mount by volume
                                  name. Examples: For volume /dev/sda1, you
                                  specify the partition as "1". Similarly, the
                                  volume partition for /dev/sda is "0" (or you
                                  can leave the property empty). More info:
                                  https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
                            description: "gcePersistentDisk represents a GCE Disk resource that is attached
                              to a kubelet's host machine and then exposed to
                              the pod. More info:
                              https://kubernetes.io/docs/concepts/storage/volum\
                              es#gcepersistentdisk"
                          awsElasticBlockStore:
                            type: object
                            required:
                              - volumeID
                            properties:
                              fsType:
                                type: string
                                description: 'fsType is the filesystem type of the volume that you want to
                                  mount. Tip: Ensure that the filesystem type is
                                  supported by the host operating system.
                                  Examples: "ext4", "xfs", "ntfs". Implicitly
                                  inferred to be "ext4" if unspecified. More
                                  info:
                                  https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
                              readOnly:
                                type: boolean
                                description: "readOnly value true will force the readOnly setting in
                                  VolumeMounts. More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#awselasticblockstore"
                              volumeID:
                                type: string
                                description: "volumeID is unique ID of the persistent disk resource in AWS
                                  (Amazon EBS volume). More info:
                                  https://kubernetes.io/docs/concepts/storage/v\
                                  olumes#awselasticblockstore"
                              partition:
                                type: integer
                                format: int32
                                description: 'partition is the partition in the volume that you want to mount.
                                  If omitted, the default is to mount by volume
                                  name. Examples: For volume /dev/sda1, you
                                  specify the partition as "1". Similarly, the
                                  volume partition for /dev/sda is "0" (or you
                                  can leave the property empty).'
                            description: "awsElasticBlockStore represents an AWS Disk resource that is
                              attached to a kubelet's host machine and then
                              exposed to the pod. More info:
                              https://kubernetes.io/docs/concepts/storage/volum\
                              es#awselasticblockstore"
                          photonPersistentDisk:
                            type: object
                            required:
                              - pdID
                            properties:
                              pdID:
                                type: string
                                description: pdID is the ID that identifies Photon Controller persistent disk
                              fsType:
                                type: string
                                description: fsType is the filesystem type to mount. Must be a filesystem type
                                  supported by the host operating system. Ex.
                                  "ext4", "xfs", "ntfs". Implicitly inferred to
                                  be "ext4" if unspecified.
                            description: photonPersistentDisk represents a PhotonController persistent disk
                              attached and mounted on kubelets host machine
                          persistentVolumeClaim:
                            type: object
                            required:
                              - claimName
                            properties:
                              readOnly:
                                type: boolean
                                description: readOnly Will force the ReadOnly setting in VolumeMounts. Default
                                  false.
                              claimName:
                                type: string
                                description: "claimName is the name of a PersistentVolumeClaim in the same
                                  namespace as the pod using this volume. More
                                  info:
                                  https://kubernetes.io/docs/concepts/storage/p\
                                  ersistent-volumes#persistentvolumeclaims"
                            description: "persistentVolumeClaimVolumeSource represents a reference to a
                              PersistentVolumeClaim in the same namespace. More
                              info:
                              https://kubernetes.io/docs/concepts/storage/persi\
                              stent-volumes#persistentvolumeclaims"
                        description: Volume represents a named volume in a pod that may be accessed by
                          any container in the pod.
                      nullable: true
                    dagsGitSync:
                      type: array
                      items:
                        type: object
                        required:
                          - repo
                        properties:
                          repo:
                            type: string
                          wait:
                            type: integer
                            format: uint16
                            minimum: 0
                            nullable: true
                          depth:
                            type: integer
                            format: uint8
                            minimum: 0
                            nullable: true
                          branch:
                            type: string
                            nullable: true
                          gitFolder:
                            type: string
                            nullable: true
                          gitSyncConf:
                            type: object
                            nullable: true
                            additionalProperties:
                              type: string
                          credentialsSecret:
                            type: string
                            nullable: true
                      default: []
                    exposeConfig:
                      type: boolean
                      nullable: true
                    loadExamples:
                      type: boolean
                      nullable: true
                    volumeMounts:
                      type: array
                      items:
                        type: object
                        required:
                          - mountPath
                          - name
                        properties:
                          name:
                            type: string
                            description: This must match the Name of a Volume.
                          subPath:
                            type: string
                            description: Path within the volume from which the container's volume should be
                              mounted. Defaults to "" (volume's root).
                          readOnly:
                            type: boolean
                            description: Mounted read-only if true, read-write otherwise (false or
                              unspecified). Defaults to false.
                          mountPath:
                            type: string
                            description: Path within the container at which the volume should be
                              mounted.  Must not contain ':'.
                          subPathExpr:
                            type: string
                            description: Expanded path within the volume from which the container's volume
                              should be mounted. Behaves similarly to SubPath
                              but environment variable references $(VAR_NAME)
                              are expanded using the container's environment.
                              Defaults to "" (volume's root). SubPathExpr and
                              SubPath are mutually exclusive.
                          mountPropagation:
                            type: string
                            description: mountPropagation determines how mounts are propagated from the host
                              to container and the other way around. When not
                              set, MountPropagationNone is used. This field is
                              beta in 1.10.
                        description: VolumeMount describes a mounting of a Volume within a container.
                      nullable: true
                    listenerClass:
                      enum:
                        - cluster-internal
                        - external-unstable
                        - external-stable
                      type: string
                      default: cluster-internal
                      description: |-
                        This field controls which type of Service the Operator creates for this AirflowCluster:

                        * cluster-internal: Use a ClusterIP service

                        * external-unstable: Use a NodePort service

                        * external-stable: Use a LoadBalancer service

                        This is a temporary solution with the goal to keep yaml manifests forward compatible. In the future, this setting will control which ListenerClass <https://docs.stackable.tech/home/stable/listener-operator/listenerclass.html> will be used to expose the service, and ListenerClass names will stay the same, allowing for a non-breaking change.
                    authentication:
                      type: array
                      items:
                        type: object
                        properties:
                          syncRolesAt:
                            enum:
                              - Registration
                              - Login
                            type: string
                            default: Registration
                            description: If we should replace ALL the user's roles each login, or only on
                              registration. Gets mapped to
                              `AUTH_ROLES_SYNC_AT_LOGIN`
                          userRegistration:
                            type: boolean
                            default: true
                            description: Allow users who are not already in the FAB DB. Gets mapped to
                              `AUTH_USER_REGISTRATION`
                          authenticationClass:
                            type: string
                            nullable: true
                            description: Name of the AuthenticationClass used to authenticate the users. At
                              the moment only LDAP is supported. If not
                              specified the default authentication (AUTH_DB)
                              will be used.
                          userRegistrationRole:
                            type: string
                            default: Public
                            description: This role will be given in addition to any AUTH_ROLES_MAPPING. Gets
                              mapped to `AUTH_USER_REGISTRATION_ROLE`
                      default: []
                      description: The Airflow authentication settings. Currently the underlying Flask
                        App Builder only supports one authentication mechanism
                        at a time. This means the operator will error out if
                        multiple references to an `AuthenticationClass` are
                        provided.
                    credentialsSecret:
                      type: string
                    vectorAggregatorConfigMapName:
                      type: string
                      nullable: true
                      description: Name of the Vector aggregator discovery ConfigMap. It must contain
                        the key `ADDRESS` with the address of the Vector
                        aggregator.
                  description: Global cluster configuration that applies to all roles and role
                    groups
                celeryExecutors:
                  type: object
                  required:
                    - roleGroups
                  properties:
                    config:
                      type: object
                      default: {}
                      properties:
                        logging:
                          type: object
                          default:
                            containers: {}
                            enableVectorAgent: null
                          properties:
                            containers:
                              type: object
                              description: Log configuration per container
                              additionalProperties:
                                type: object
                                anyOf:
                                  - required:
                                      - custom
                                  - {}
                                properties:
                                  file:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the file appender
                                  custom:
                                    type: object
                                    properties:
                                      configMap:
                                        type: string
                                        nullable: true
                                        description: ConfigMap containing the log configuration files
                                    description: Custom log configuration provided in a ConfigMap
                                  console:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the console appender
                                  loggers:
                                    type: object
                                    default: {}
                                    description: Configuration per logger
                                    additionalProperties:
                                      type: object
                                      properties:
                                        level:
                                          enum:
                                            - TRACE
                                            - DEBUG
                                            - INFO
                                            - WARN
                                            - ERROR
                                            - FATAL
                                            - NONE
                                          type: string
                                          nullable: true
                                          description: The log level threshold. Log events with a lower log level are
                                            discarded.
                                      description: Configuration of a logger
                                description: Log configuration of the container
                            enableVectorAgent:
                              type: boolean
                              nullable: true
                              description: Wether or not to deploy a container with the Vector log agent
                          description: Logging configuration
                        affinity:
                          type: object
                          default:
                            podAffinity: null
                            nodeAffinity: null
                            nodeSelector: null
                            podAntiAffinity: null
                          properties:
                            podAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - topologyKey
                                    properties:
                                      namespaces:
                                        type: array
                                        items:
                                          type: string
                                        description: namespaces specifies a static list of namespace names that the term
                                          applies to. The term is applied to the
                                          union of the namespaces listed in this
                                          field and the ones selected by
                                          namespaceSelector. null or empty
                                          namespaces list and null
                                          namespaceSelector means "this pod's
                                          namespace".
                                      topologyKey:
                                        type: string
                                        description: This pod should be co-located (affinity) or not co-located
                                          (anti-affinity) with the pods matching
                                          the labelSelector in the specified
                                          namespaces, where co-located is
                                          defined as running on a node whose
                                          value of the label with key
                                          topologyKey matches that of any node
                                          on which any of the selected pods is
                                          running. Empty topologyKey is not
                                          allowed.
                                      labelSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over a set of resources, in this case pods.
                                      namespaceSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over the set of namespaces that the term applies to.
                                          The term is applied to the union of
                                          the namespaces selected by this field
                                          and the ones listed in the namespaces
                                          field. null selector and null or empty
                                          namespaces list means "this pod's
                                          namespace". An empty selector ({})
                                          matches all namespaces.
                                    description: Defines a set of pods (namely those matching the labelSelector
                                      relative to the given namespace(s)) that
                                      this pod should be co-located (affinity)
                                      or not co-located (anti-affinity) with,
                                      where co-located is defined as running on
                                      a node whose value of the label with key
                                      <topologyKey> matches that of any node on
                                      which a pod of the set of pods is running
                                  description: If the affinity requirements specified by this field are not met at
                                    scheduling time, the pod will not be
                                    scheduled onto the node. If the affinity
                                    requirements specified by this field cease
                                    to be met at some point during pod execution
                                    (e.g. due to a pod label update), the system
                                    may or may not try to eventually evict the
                                    pod from its node. When there are multiple
                                    elements, the lists of nodes corresponding
                                    to each podAffinityTerm are intersected,
                                    i.e. all terms must be satisfied.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - podAffinityTerm
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: weight associated with matching the corresponding podAffinityTerm,
                                          in the range 1-100.
                                      podAffinityTerm:
                                        type: object
                                        required:
                                          - topologyKey
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                            description: namespaces specifies a static list of namespace names that the term
                                              applies to. The term is applied to
                                              the union of the namespaces listed
                                              in this field and the ones
                                              selected by namespaceSelector.
                                              null or empty namespaces list and
                                              null namespaceSelector means "this
                                              pod's namespace".
                                          topologyKey:
                                            type: string
                                            description: This pod should be co-located (affinity) or not co-located
                                              (anti-affinity) with the pods
                                              matching the labelSelector in the
                                              specified namespaces, where
                                              co-located is defined as running
                                              on a node whose value of the label
                                              with key topologyKey matches that
                                              of any node on which any of the
                                              selected pods is running. Empty
                                              topologyKey is not allowed.
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over a set of resources, in this case pods.
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over the set of namespaces that the term applies to.
                                              The term is applied to the union
                                              of the namespaces selected by this
                                              field and the ones listed in the
                                              namespaces field. null selector
                                              and null or empty namespaces list
                                              means "this pod's namespace". An
                                              empty selector ({}) matches all
                                              namespaces.
                                        description: Required. A pod affinity term, associated with the corresponding
                                          weight.
                                    description: The weights of all of the matched WeightedPodAffinityTerm fields
                                      are added per-node to find the most
                                      preferred node(s)
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the affinity expressions specified by this
                                    field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    has pods which matches the corresponding
                                    podAffinityTerm; the node(s) with the
                                    highest sum are the most preferred.
                              description: Pod affinity is a group of inter pod affinity scheduling rules.
                            nodeAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: object
                                  required:
                                    - nodeSelectorTerms
                                  properties:
                                    nodeSelectorTerms:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          matchFields:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's fields.
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's labels.
                                        description: A null or empty node selector term matches no objects. The
                                          requirements of them are ANDed. The
                                          TopologySelectorTerm type implements a
                                          subset of the NodeSelectorTerm.
                                      description: Required. A list of node selector terms. The terms are ORed.
                                  description: If the affinity requirements specified by this field are not met at
                                    scheduling time, the pod will not be
                                    scheduled onto the node. If the affinity
                                    requirements specified by this field cease
                                    to be met at some point during pod execution
                                    (e.g. due to an update), the system may or
                                    may not try to eventually evict the pod from
                                    its node.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - preference
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: Weight associated with matching the corresponding nodeSelectorTerm,
                                          in the range 1-100.
                                      preference:
                                        type: object
                                        properties:
                                          matchFields:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's fields.
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: The label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: An array of string values. If the operator is In or NotIn, the
                                                    values array must be
                                                    non-empty. If the operator
                                                    is Exists or DoesNotExist,
                                                    the values array must be
                                                    empty. If the operator is Gt
                                                    or Lt, the values array must
                                                    have a single element, which
                                                    will be interpreted as an
                                                    integer. This array is
                                                    replaced during a strategic
                                                    merge patch.
                                                operator:
                                                  type: string
                                                  description: Represents a key's relationship to a set of values. Valid operators
                                                    are In, NotIn, Exists,
                                                    DoesNotExist. Gt, and Lt.
                                              description: A node selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: A list of node selector requirements by node's labels.
                                        description: A node selector term, associated with the corresponding weight.
                                    description: An empty preferred scheduling term matches all objects with
                                      implicit weight 0 (i.e. it's a no-op). A
                                      null preferred scheduling term matches no
                                      objects (i.e. is also a no-op).
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the affinity expressions specified by this
                                    field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    matches the corresponding matchExpressions;
                                    the node(s) with the highest sum are the
                                    most preferred.
                              description: Node affinity is a group of node affinity scheduling rules.
                            nodeSelector:
                              type: object
                              nullable: true
                            podAntiAffinity:
                              type: object
                              nullable: true
                              properties:
                                requiredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - topologyKey
                                    properties:
                                      namespaces:
                                        type: array
                                        items:
                                          type: string
                                        description: namespaces specifies a static list of namespace names that the term
                                          applies to. The term is applied to the
                                          union of the namespaces listed in this
                                          field and the ones selected by
                                          namespaceSelector. null or empty
                                          namespaces list and null
                                          namespaceSelector means "this pod's
                                          namespace".
                                      topologyKey:
                                        type: string
                                        description: This pod should be co-located (affinity) or not co-located
                                          (anti-affinity) with the pods matching
                                          the labelSelector in the specified
                                          namespaces, where co-located is
                                          defined as running on a node whose
                                          value of the label with key
                                          topologyKey matches that of any node
                                          on which any of the selected pods is
                                          running. Empty topologyKey is not
                                          allowed.
                                      labelSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over a set of resources, in this case pods.
                                      namespaceSelector:
                                        type: object
                                        properties:
                                          matchLabels:
                                            type: object
                                            description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                              the matchLabels map is equivalent
                                              to an element of matchExpressions,
                                              whose key field is "key", the
                                              operator is "In", and the values
                                              array contains only "value". The
                                              requirements are ANDed.
                                            additionalProperties:
                                              type: string
                                          matchExpressions:
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - key
                                                - operator
                                              properties:
                                                key:
                                                  type: string
                                                  description: key is the label key that the selector applies to.
                                                values:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: values is an array of string values. If the operator is In or
                                                    NotIn, the values array must
                                                    be non-empty. If the
                                                    operator is Exists or
                                                    DoesNotExist, the values
                                                    array must be empty. This
                                                    array is replaced during a
                                                    strategic merge patch.
                                                operator:
                                                  type: string
                                                  description: operator represents a key's relationship to a set of values. Valid
                                                    operators are In, NotIn,
                                                    Exists and DoesNotExist.
                                              description: A label selector requirement is a selector that contains values, a
                                                key, and an operator that
                                                relates the key and values.
                                            description: matchExpressions is a list of label selector requirements. The
                                              requirements are ANDed.
                                        description: A label query over the set of namespaces that the term applies to.
                                          The term is applied to the union of
                                          the namespaces selected by this field
                                          and the ones listed in the namespaces
                                          field. null selector and null or empty
                                          namespaces list means "this pod's
                                          namespace". An empty selector ({})
                                          matches all namespaces.
                                    description: Defines a set of pods (namely those matching the labelSelector
                                      relative to the given namespace(s)) that
                                      this pod should be co-located (affinity)
                                      or not co-located (anti-affinity) with,
                                      where co-located is defined as running on
                                      a node whose value of the label with key
                                      <topologyKey> matches that of any node on
                                      which a pod of the set of pods is running
                                  description: If the anti-affinity requirements specified by this field are not
                                    met at scheduling time, the pod will not be
                                    scheduled onto the node. If the
                                    anti-affinity requirements specified by this
                                    field cease to be met at some point during
                                    pod execution (e.g. due to a pod label
                                    update), the system may or may not try to
                                    eventually evict the pod from its node. When
                                    there are multiple elements, the lists of
                                    nodes corresponding to each podAffinityTerm
                                    are intersected, i.e. all terms must be
                                    satisfied.
                                preferredDuringSchedulingIgnoredDuringExecution:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - podAffinityTerm
                                      - weight
                                    properties:
                                      weight:
                                        type: integer
                                        format: int32
                                        description: weight associated with matching the corresponding podAffinityTerm,
                                          in the range 1-100.
                                      podAffinityTerm:
                                        type: object
                                        required:
                                          - topologyKey
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                            description: namespaces specifies a static list of namespace names that the term
                                              applies to. The term is applied to
                                              the union of the namespaces listed
                                              in this field and the ones
                                              selected by namespaceSelector.
                                              null or empty namespaces list and
                                              null namespaceSelector means "this
                                              pod's namespace".
                                          topologyKey:
                                            type: string
                                            description: This pod should be co-located (affinity) or not co-located
                                              (anti-affinity) with the pods
                                              matching the labelSelector in the
                                              specified namespaces, where
                                              co-located is defined as running
                                              on a node whose value of the label
                                              with key topologyKey matches that
                                              of any node on which any of the
                                              selected pods is running. Empty
                                              topologyKey is not allowed.
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over a set of resources, in this case pods.
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                  the matchLabels map is
                                                  equivalent to an element of
                                                  matchExpressions, whose key
                                                  field is "key", the operator
                                                  is "In", and the values array
                                                  contains only "value". The
                                                  requirements are ANDed.
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  required:
                                                    - key
                                                    - operator
                                                  properties:
                                                    key:
                                                      type: string
                                                      description: key is the label key that the selector applies to.
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                      description: values is an array of string values. If the operator is In or
                                                        NotIn, the values array
                                                        must be non-empty. If
                                                        the operator is Exists
                                                        or DoesNotExist, the
                                                        values array must be
                                                        empty. This array is
                                                        replaced during a
                                                        strategic merge patch.
                                                    operator:
                                                      type: string
                                                      description: operator represents a key's relationship to a set of values. Valid
                                                        operators are In, NotIn,
                                                        Exists and DoesNotExist.
                                                  description: A label selector requirement is a selector that contains values, a
                                                    key, and an operator that
                                                    relates the key and values.
                                                description: matchExpressions is a list of label selector requirements. The
                                                  requirements are ANDed.
                                            description: A label query over the set of namespaces that the term applies to.
                                              The term is applied to the union
                                              of the namespaces selected by this
                                              field and the ones listed in the
                                              namespaces field. null selector
                                              and null or empty namespaces list
                                              means "this pod's namespace". An
                                              empty selector ({}) matches all
                                              namespaces.
                                        description: Required. A pod affinity term, associated with the corresponding
                                          weight.
                                    description: The weights of all of the matched WeightedPodAffinityTerm fields
                                      are added per-node to find the most
                                      preferred node(s)
                                  description: The scheduler will prefer to schedule pods to nodes that satisfy
                                    the anti-affinity expressions specified by
                                    this field, but it may choose a node that
                                    violates one or more of the expressions. The
                                    node that is most preferred is the one with
                                    the greatest sum of weights, i.e. for each
                                    node that meets all of the scheduling
                                    requirements (resource request,
                                    requiredDuringScheduling anti-affinity
                                    expressions, etc.), compute a sum by
                                    iterating through the elements of this field
                                    and adding "weight" to the sum if the node
                                    has pods which matches the corresponding
                                    podAffinityTerm; the node(s) with the
                                    highest sum are the most preferred.
                              description: Pod anti affinity is a group of inter pod anti affinity scheduling
                                rules.
                        resources:
                          type: object
                          default:
                            cpu:
                              max: null
                              min: null
                            memory:
                              limit: null
                              runtimeLimits: {}
                            storage: {}
                          properties:
                            cpu:
                              type: object
                              default:
                                max: null
                                min: null
                              properties:
                                max:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                min:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                            memory:
                              type: object
                              properties:
                                limit:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                runtimeLimits:
                                  type: object
                            storage:
                              type: object
                        gracefulShutdownTimeout:
                          type: string
                          nullable: true
                          description: Time period Pods have to gracefully shut down, e.g. `30m`, `1h` or
                            `2d`. Consult the operator documentation for
                            details.
                    roleConfig:
                      type: object
                      default:
                        podDisruptionBudget:
                          enabled: true
                          maxUnavailable: null
                      properties:
                        podDisruptionBudget:
                          type: object
                          default:
                            enabled: true
                            maxUnavailable: null
                          properties:
                            enabled:
                              type: boolean
                              default: true
                              description: Whether a PodDisruptionBudget should be written out for this role.
                                Disabling this enables you to specify your own -
                                custom - one. Defaults to true.
                            maxUnavailable:
                              type: integer
                              format: uint16
                              minimum: 0
                              nullable: true
                              description: The number of Pods that are allowed to be down because of voluntary
                                disruptions. If you don't explicitly set this,
                                the operator will use a sane default based upon
                                knowledge about the individual product.
                          description: "This struct is used to configure: 1.) If PodDisruptionBudgets are
                            created by the operator 2.) The allowed number of
                            Pods to be unavailable (`maxUnavailable`)"
                      description: This is a product-agnostic RoleConfig, which is sufficient for most
                        of the products.
                    roleGroups:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          config:
                            type: object
                            default: {}
                            properties:
                              logging:
                                type: object
                                default:
                                  containers: {}
                                  enableVectorAgent: null
                                properties:
                                  containers:
                                    type: object
                                    description: Log configuration per container
                                    additionalProperties:
                                      type: object
                                      anyOf:
                                        - required:
                                            - custom
                                        - {}
                                      properties:
                                        file:
                                          type: object
                                          nullable: true
                                          properties:
                                            level:
                                              enum:
                                                - TRACE
                                                - DEBUG
                                                - INFO
                                                - WARN
                                                - ERROR
                                                - FATAL
                                                - NONE
                                              type: string
                                              nullable: true
                                              description: The log level threshold. Log events with a lower log level are
                                                discarded.
                                          description: Configuration for the file appender
                                        custom:
                                          type: object
                                          properties:
                                            configMap:
                                              type: string
                                              nullable: true
                                              description: ConfigMap containing the log configuration files
                                          description: Custom log configuration provided in a ConfigMap
                                        console:
                                          type: object
                                          nullable: true
                                          properties:
                                            level:
                                              enum:
                                                - TRACE
                                                - DEBUG
                                                - INFO
                                                - WARN
                                                - ERROR
                                                - FATAL
                                                - NONE
                                              type: string
                                              nullable: true
                                              description: The log level threshold. Log events with a lower log level are
                                                discarded.
                                          description: Configuration for the console appender
                                        loggers:
                                          type: object
                                          default: {}
                                          description: Configuration per logger
                                          additionalProperties:
                                            type: object
                                            properties:
                                              level:
                                                enum:
                                                  - TRACE
                                                  - DEBUG
                                                  - INFO
                                                  - WARN
                                                  - ERROR
                                                  - FATAL
                                                  - NONE
                                                type: string
                                                nullable: true
                                                description: The log level threshold. Log events with a lower log level are
                                                  discarded.
                                            description: Configuration of a logger
                                      description: Log configuration of the container
                                  enableVectorAgent:
                                    type: boolean
                                    nullable: true
                                    description: Wether or not to deploy a container with the Vector log agent
                                description: Logging configuration
                              affinity:
                                type: object
                                default:
                                  podAffinity: null
                                  nodeAffinity: null
                                  nodeSelector: null
                                  podAntiAffinity: null
                                properties:
                                  podAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - topologyKey
                                          properties:
                                            namespaces:
                                              type: array
                                              items:
                                                type: string
                                              description: namespaces specifies a static list of namespace names that the term
                                                applies to. The term is applied
                                                to the union of the namespaces
                                                listed in this field and the
                                                ones selected by
                                                namespaceSelector. null or empty
                                                namespaces list and null
                                                namespaceSelector means "this
                                                pod's namespace".
                                            topologyKey:
                                              type: string
                                              description: This pod should be co-located (affinity) or not co-located
                                                (anti-affinity) with the pods
                                                matching the labelSelector in
                                                the specified namespaces, where
                                                co-located is defined as running
                                                on a node whose value of the
                                                label with key topologyKey
                                                matches that of any node on
                                                which any of the selected pods
                                                is running. Empty topologyKey is
                                                not allowed.
                                            labelSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over a set of resources, in this case pods.
                                            namespaceSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over the set of namespaces that the term applies to.
                                                The term is applied to the union
                                                of the namespaces selected by
                                                this field and the ones listed
                                                in the namespaces field. null
                                                selector and null or empty
                                                namespaces list means "this
                                                pod's namespace". An empty
                                                selector ({}) matches all
                                                namespaces.
                                          description: Defines a set of pods (namely those matching the labelSelector
                                            relative to the given namespace(s))
                                            that this pod should be co-located
                                            (affinity) or not co-located
                                            (anti-affinity) with, where
                                            co-located is defined as running on
                                            a node whose value of the label with
                                            key <topologyKey> matches that of
                                            any node on which a pod of the set
                                            of pods is running
                                        description: If the affinity requirements specified by this field are not met at
                                          scheduling time, the pod will not be
                                          scheduled onto the node. If the
                                          affinity requirements specified by
                                          this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to a pod label update), the system may
                                          or may not try to eventually evict the
                                          pod from its node. When there are
                                          multiple elements, the lists of nodes
                                          corresponding to each podAffinityTerm
                                          are intersected, i.e. all terms must
                                          be satisfied.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - podAffinityTerm
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: weight associated with matching the corresponding podAffinityTerm,
                                                in the range 1-100.
                                            podAffinityTerm:
                                              type: object
                                              required:
                                                - topologyKey
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: namespaces specifies a static list of namespace names that the term
                                                    applies to. The term is
                                                    applied to the union of the
                                                    namespaces listed in this
                                                    field and the ones selected
                                                    by namespaceSelector. null
                                                    or empty namespaces list and
                                                    null namespaceSelector means
                                                    "this pod's namespace".
                                                topologyKey:
                                                  type: string
                                                  description: This pod should be co-located (affinity) or not co-located
                                                    (anti-affinity) with the
                                                    pods matching the
                                                    labelSelector in the
                                                    specified namespaces, where
                                                    co-located is defined as
                                                    running on a node whose
                                                    value of the label with key
                                                    topologyKey matches that of
                                                    any node on which any of the
                                                    selected pods is running.
                                                    Empty topologyKey is not
                                                    allowed.
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over a set of resources, in this case pods.
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over the set of namespaces that the term applies to.
                                                    The term is applied to the
                                                    union of the namespaces
                                                    selected by this field and
                                                    the ones listed in the
                                                    namespaces field. null
                                                    selector and null or empty
                                                    namespaces list means "this
                                                    pod's namespace". An empty
                                                    selector ({}) matches all
                                                    namespaces.
                                              description: Required. A pod affinity term, associated with the corresponding
                                                weight.
                                          description: The weights of all of the matched WeightedPodAffinityTerm fields
                                            are added per-node to find the most
                                            preferred node(s)
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the affinity expressions specified by
                                          this field, but it may choose a node
                                          that violates one or more of the
                                          expressions. The node that is most
                                          preferred is the one with the greatest
                                          sum of weights, i.e. for each node
                                          that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node has pods which matches the
                                          corresponding podAffinityTerm; the
                                          node(s) with the highest sum are the
                                          most preferred.
                                    description: Pod affinity is a group of inter pod affinity scheduling rules.
                                  nodeAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: object
                                        required:
                                          - nodeSelectorTerms
                                        properties:
                                          nodeSelectorTerms:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                matchFields:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's fields.
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's labels.
                                              description: A null or empty node selector term matches no objects. The
                                                requirements of them are ANDed.
                                                The TopologySelectorTerm type
                                                implements a subset of the
                                                NodeSelectorTerm.
                                            description: Required. A list of node selector terms. The terms are ORed.
                                        description: If the affinity requirements specified by this field are not met at
                                          scheduling time, the pod will not be
                                          scheduled onto the node. If the
                                          affinity requirements specified by
                                          this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to an update), the system may or may
                                          not try to eventually evict the pod
                                          from its node.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - preference
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: Weight associated with matching the corresponding nodeSelectorTerm,
                                                in the range 1-100.
                                            preference:
                                              type: object
                                              properties:
                                                matchFields:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's fields.
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: The label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: An array of string values. If the operator is In or NotIn, the
                                                          values array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. If the operator
                                                          is Gt or Lt, the
                                                          values array must have
                                                          a single element,
                                                          which will be
                                                          interpreted as an
                                                          integer. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: Represents a key's relationship to a set of values. Valid operators
                                                          are In, NotIn, Exists,
                                                          DoesNotExist. Gt, and
                                                          Lt.
                                                    description: A node selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: A list of node selector requirements by node's labels.
                                              description: A node selector term, associated with the corresponding weight.
                                          description: An empty preferred scheduling term matches all objects with
                                            implicit weight 0 (i.e. it's a
                                            no-op). A null preferred scheduling
                                            term matches no objects (i.e. is
                                            also a no-op).
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the affinity expressions specified by
                                          this field, but it may choose a node
                                          that violates one or more of the
                                          expressions. The node that is most
                                          preferred is the one with the greatest
                                          sum of weights, i.e. for each node
                                          that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node matches the corresponding
                                          matchExpressions; the node(s) with the
                                          highest sum are the most preferred.
                                    description: Node affinity is a group of node affinity scheduling rules.
                                  nodeSelector:
                                    type: object
                                    nullable: true
                                  podAntiAffinity:
                                    type: object
                                    nullable: true
                                    properties:
                                      requiredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - topologyKey
                                          properties:
                                            namespaces:
                                              type: array
                                              items:
                                                type: string
                                              description: namespaces specifies a static list of namespace names that the term
                                                applies to. The term is applied
                                                to the union of the namespaces
                                                listed in this field and the
                                                ones selected by
                                                namespaceSelector. null or empty
                                                namespaces list and null
                                                namespaceSelector means "this
                                                pod's namespace".
                                            topologyKey:
                                              type: string
                                              description: This pod should be co-located (affinity) or not co-located
                                                (anti-affinity) with the pods
                                                matching the labelSelector in
                                                the specified namespaces, where
                                                co-located is defined as running
                                                on a node whose value of the
                                                label with key topologyKey
                                                matches that of any node on
                                                which any of the selected pods
                                                is running. Empty topologyKey is
                                                not allowed.
                                            labelSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over a set of resources, in this case pods.
                                            namespaceSelector:
                                              type: object
                                              properties:
                                                matchLabels:
                                                  type: object
                                                  description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                    the matchLabels map is
                                                    equivalent to an element of
                                                    matchExpressions, whose key
                                                    field is "key", the operator
                                                    is "In", and the values
                                                    array contains only "value".
                                                    The requirements are ANDed.
                                                  additionalProperties:
                                                    type: string
                                                matchExpressions:
                                                  type: array
                                                  items:
                                                    type: object
                                                    required:
                                                      - key
                                                      - operator
                                                    properties:
                                                      key:
                                                        type: string
                                                        description: key is the label key that the selector applies to.
                                                      values:
                                                        type: array
                                                        items:
                                                          type: string
                                                        description: values is an array of string values. If the operator is In or
                                                          NotIn, the values
                                                          array must be
                                                          non-empty. If the
                                                          operator is Exists or
                                                          DoesNotExist, the
                                                          values array must be
                                                          empty. This array is
                                                          replaced during a
                                                          strategic merge patch.
                                                      operator:
                                                        type: string
                                                        description: operator represents a key's relationship to a set of values. Valid
                                                          operators are In,
                                                          NotIn, Exists and
                                                          DoesNotExist.
                                                    description: A label selector requirement is a selector that contains values, a
                                                      key, and an operator that
                                                      relates the key and
                                                      values.
                                                  description: matchExpressions is a list of label selector requirements. The
                                                    requirements are ANDed.
                                              description: A label query over the set of namespaces that the term applies to.
                                                The term is applied to the union
                                                of the namespaces selected by
                                                this field and the ones listed
                                                in the namespaces field. null
                                                selector and null or empty
                                                namespaces list means "this
                                                pod's namespace". An empty
                                                selector ({}) matches all
                                                namespaces.
                                          description: Defines a set of pods (namely those matching the labelSelector
                                            relative to the given namespace(s))
                                            that this pod should be co-located
                                            (affinity) or not co-located
                                            (anti-affinity) with, where
                                            co-located is defined as running on
                                            a node whose value of the label with
                                            key <topologyKey> matches that of
                                            any node on which a pod of the set
                                            of pods is running
                                        description: If the anti-affinity requirements specified by this field are not
                                          met at scheduling time, the pod will
                                          not be scheduled onto the node. If the
                                          anti-affinity requirements specified
                                          by this field cease to be met at some
                                          point during pod execution (e.g. due
                                          to a pod label update), the system may
                                          or may not try to eventually evict the
                                          pod from its node. When there are
                                          multiple elements, the lists of nodes
                                          corresponding to each podAffinityTerm
                                          are intersected, i.e. all terms must
                                          be satisfied.
                                      preferredDuringSchedulingIgnoredDuringExecution:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - podAffinityTerm
                                            - weight
                                          properties:
                                            weight:
                                              type: integer
                                              format: int32
                                              description: weight associated with matching the corresponding podAffinityTerm,
                                                in the range 1-100.
                                            podAffinityTerm:
                                              type: object
                                              required:
                                                - topologyKey
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                  description: namespaces specifies a static list of namespace names that the term
                                                    applies to. The term is
                                                    applied to the union of the
                                                    namespaces listed in this
                                                    field and the ones selected
                                                    by namespaceSelector. null
                                                    or empty namespaces list and
                                                    null namespaceSelector means
                                                    "this pod's namespace".
                                                topologyKey:
                                                  type: string
                                                  description: This pod should be co-located (affinity) or not co-located
                                                    (anti-affinity) with the
                                                    pods matching the
                                                    labelSelector in the
                                                    specified namespaces, where
                                                    co-located is defined as
                                                    running on a node whose
                                                    value of the label with key
                                                    topologyKey matches that of
                                                    any node on which any of the
                                                    selected pods is running.
                                                    Empty topologyKey is not
                                                    allowed.
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over a set of resources, in this case pods.
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                                        the matchLabels map is
                                                        equivalent to an element
                                                        of matchExpressions,
                                                        whose key field is
                                                        "key", the operator is
                                                        "In", and the values
                                                        array contains only
                                                        "value". The
                                                        requirements are ANDed.
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        required:
                                                          - key
                                                          - operator
                                                        properties:
                                                          key:
                                                            type: string
                                                            description: key is the label key that the selector applies to.
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                            description: values is an array of string values. If the operator is In or
                                                              NotIn, the values
                                                              array must be
                                                              non-empty. If the
                                                              operator is Exists
                                                              or DoesNotExist, the
                                                              values array must be
                                                              empty. This array is
                                                              replaced during a
                                                              strategic merge
                                                              patch.
                                                          operator:
                                                            type: string
                                                            description: operator represents a key's relationship to a set of values. Valid
                                                              operators are In,
                                                              NotIn, Exists and
                                                              DoesNotExist.
                                                        description: A label selector requirement is a selector that contains values, a
                                                          key, and an operator
                                                          that relates the key
                                                          and values.
                                                      description: matchExpressions is a list of label selector requirements. The
                                                        requirements are ANDed.
                                                  description: A label query over the set of namespaces that the term applies to.
                                                    The term is applied to the
                                                    union of the namespaces
                                                    selected by this field and
                                                    the ones listed in the
                                                    namespaces field. null
                                                    selector and null or empty
                                                    namespaces list means "this
                                                    pod's namespace". An empty
                                                    selector ({}) matches all
                                                    namespaces.
                                              description: Required. A pod affinity term, associated with the corresponding
                                                weight.
                                          description: The weights of all of the matched WeightedPodAffinityTerm fields
                                            are added per-node to find the most
                                            preferred node(s)
                                        description: The scheduler will prefer to schedule pods to nodes that satisfy
                                          the anti-affinity expressions
                                          specified by this field, but it may
                                          choose a node that violates one or
                                          more of the expressions. The node that
                                          is most preferred is the one with the
                                          greatest sum of weights, i.e. for each
                                          node that meets all of the scheduling
                                          requirements (resource request,
                                          requiredDuringScheduling anti-affinity
                                          expressions, etc.), compute a sum by
                                          iterating through the elements of this
                                          field and adding "weight" to the sum
                                          if the node has pods which matches the
                                          corresponding podAffinityTerm; the
                                          node(s) with the highest sum are the
                                          most preferred.
                                    description: Pod anti affinity is a group of inter pod anti affinity scheduling
                                      rules.
                              resources:
                                type: object
                                default:
                                  cpu:
                                    max: null
                                    min: null
                                  memory:
                                    limit: null
                                    runtimeLimits: {}
                                  storage: {}
                                properties:
                                  cpu:
                                    type: object
                                    default:
                                      max: null
                                      min: null
                                    properties:
                                      max:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                      min:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                  memory:
                                    type: object
                                    properties:
                                      limit:
                                        type: string
                                        nullable: true
                                        description: >-
                                          Quantity is a fixed-point
                                          representation of a number. It
                                          provides convenient
                                          marshaling/unmarshaling in JSON and
                                          YAML, in addition to String() and
                                          AsInt64() accessors.


                                          The serialization format is:


                                          ``` <quantity>        ::=
                                          <signedNumber><suffix>

                                          	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                          <digit>           ::= 0 | 1 | ... | 9
                                          <digits>          ::= <digit> |
                                          <digit><digits> <number>          ::=
                                          <digits> | <digits>.<digits> |
                                          <digits>. | .<digits>
                                          <sign>            ::= "+" | "-"
                                          <signedNumber>    ::= <number> |
                                          <sign><number> <suffix>          ::=
                                          <binarySI> | <decimalExponent> |
                                          <decimalSI> <binarySI>        ::= Ki |
                                          Mi | Gi | Ti | Pi | Ei

                                          	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                          <decimalSI>       ::= m | "" | k | M |
                                          G | T | P | E

                                          	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                          <decimalExponent> ::= "e"
                                          <signedNumber> | "E" <signedNumber>
                                          ```


                                          No matter which of the three exponent
                                          forms is used, no quantity may
                                          represent a number greater than 2^63-1
                                          in magnitude, nor may it have more
                                          than 3 decimal places. Numbers larger
                                          or more precise will be capped or
                                          rounded up. (E.g.: 0.1m will rounded
                                          up to 1m.) This may be extended in the
                                          future if we require larger or smaller
                                          quantities.


                                          When a Quantity is parsed from a
                                          string, it will remember the type of
                                          suffix it had, and will use the same
                                          type again when it is serialized.


                                          Before serializing, Quantity will be
                                          put in "canonical form". This means
                                          that Exponent/suffix will be adjusted
                                          up or down (with a corresponding
                                          increase or decrease in Mantissa) such
                                          that:


                                          - No precision is lost - No fractional
                                          digits will be emitted - The exponent
                                          (or suffix) is as large as possible.


                                          The sign will be omitted unless the
                                          number is negative.


                                          Examples:


                                          - 1.5 will be serialized as "1500m" -
                                          1.5Gi will be serialized as "1536Mi"


                                          Note that the quantity will NEVER be
                                          internally represented by a floating
                                          point number. That is the whole point
                                          of this exercise.


                                          Non-canonical values will still parse
                                          as long as they are well formed, but
                                          will be re-emitted in their canonical
                                          form. (So always use canonical form,
                                          or don't diff.)


                                          This format is intended to make it
                                          difficult to use these numbers without
                                          writing some sort of special handling
                                          code in the hopes that that will cause
                                          implementors to also use a fixed point
                                          implementation.
                                      runtimeLimits:
                                        type: object
                                  storage:
                                    type: object
                              gracefulShutdownTimeout:
                                type: string
                                nullable: true
                                description: Time period Pods have to gracefully shut down, e.g. `30m`, `1h` or
                                  `2d`. Consult the operator documentation for
                                  details.
                          replicas:
                            type: integer
                            format: uint16
                            minimum: 0
                            nullable: true
                          selector:
                            type: object
                            nullable: true
                            properties:
                              matchLabels:
                                type: object
                                description: matchLabels is a map of {key,value} pairs. A single {key,value} in
                                  the matchLabels map is equivalent to an
                                  element of matchExpressions, whose key field
                                  is "key", the operator is "In", and the values
                                  array contains only "value". The requirements
                                  are ANDed.
                                additionalProperties:
                                  type: string
                              matchExpressions:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - key
                                    - operator
                                  properties:
                                    key:
                                      type: string
                                      description: key is the label key that the selector applies to.
                                    values:
                                      type: array
                                      items:
                                        type: string
                                      description: values is an array of string values. If the operator is In or
                                        NotIn, the values array must be
                                        non-empty. If the operator is Exists or
                                        DoesNotExist, the values array must be
                                        empty. This array is replaced during a
                                        strategic merge patch.
                                    operator:
                                      type: string
                                      description: operator represents a key's relationship to a set of values. Valid
                                        operators are In, NotIn, Exists and
                                        DoesNotExist.
                                  description: A label selector requirement is a selector that contains values, a
                                    key, and an operator that relates the key
                                    and values.
                                description: matchExpressions is a list of label selector requirements. The
                                  requirements are ANDed.
                            description: A label selector is a label query over a set of resources. The
                              result of matchLabels and matchExpressions are
                              ANDed. An empty label selector matches all
                              objects. A null label selector matches no objects.
                          cliOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: string
                          envOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: string
                          podOverrides:
                            type: object
                            default: {}
                            properties:
                              spec:
                                type: object
                                properties:
                                  os:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                  hostIPC:
                                    type: boolean
                                  hostPID:
                                    type: boolean
                                  volumes:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        fc:
                                          type: object
                                          properties:
                                            lun:
                                              type: integer
                                              format: int32
                                            wwids:
                                              type: array
                                              items:
                                                type: string
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            targetWWNs:
                                              type: array
                                              items:
                                                type: string
                                        csi:
                                          type: object
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeAttributes:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            nodePublishSecretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        nfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            server:
                                              type: string
                                            readOnly:
                                              type: boolean
                                        rbd:
                                          type: object
                                          properties:
                                            pool:
                                              type: string
                                            user:
                                              type: string
                                            image:
                                              type: string
                                            fsType:
                                              type: string
                                            keyring:
                                              type: string
                                            monitors:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        name:
                                          type: string
                                        iscsi:
                                          type: object
                                          properties:
                                            iqn:
                                              type: string
                                            lun:
                                              type: integer
                                              format: int32
                                            fsType:
                                              type: string
                                            portals:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            targetPortal:
                                              type: string
                                            initiatorName:
                                              type: string
                                            iscsiInterface:
                                              type: string
                                            chapAuthSession:
                                              type: boolean
                                            chapAuthDiscovery:
                                              type: boolean
                                        cephfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            user:
                                              type: string
                                            monitors:
                                              type: array
                                              items:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            secretFile:
                                              type: string
                                        cinder:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        secret:
                                          type: object
                                          properties:
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                            optional:
                                              type: boolean
                                            secretName:
                                              type: string
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        flocker:
                                          type: object
                                          properties:
                                            datasetName:
                                              type: string
                                            datasetUUID:
                                              type: string
                                        gitRepo:
                                          type: object
                                          properties:
                                            revision:
                                              type: string
                                            directory:
                                              type: string
                                            repository:
                                              type: string
                                        quobyte:
                                          type: object
                                          properties:
                                            user:
                                              type: string
                                            group:
                                              type: string
                                            tenant:
                                              type: string
                                            volume:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            registry:
                                              type: string
                                        scaleIO:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            system:
                                              type: string
                                            gateway:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            sslEnabled:
                                              type: boolean
                                            volumeName:
                                              type: string
                                            storageMode:
                                              type: string
                                            storagePool:
                                              type: string
                                            protectionDomain:
                                              type: string
                                        emptyDir:
                                          type: object
                                          properties:
                                            medium:
                                              type: string
                                            sizeLimit:
                                              type: string
                                        hostPath:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            type:
                                              type: string
                                        azureDisk:
                                          type: object
                                          properties:
                                            kind:
                                              type: string
                                            fsType:
                                              type: string
                                            diskURI:
                                              type: string
                                            diskName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            cachingMode:
                                              type: string
                                        azureFile:
                                          type: object
                                          properties:
                                            readOnly:
                                              type: boolean
                                            shareName:
                                              type: string
                                            secretName:
                                              type: string
                                        configMap:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                            optional:
                                              type: boolean
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        ephemeral:
                                          type: object
                                          properties:
                                            volumeClaimTemplate:
                                              type: object
                                              properties:
                                                spec:
                                                  type: object
                                                  properties:
                                                    selector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    resources:
                                                      type: object
                                                      properties:
                                                        claims:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              name:
                                                                type: string
                                                        limits:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        requests:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                    dataSource:
                                                      type: object
                                                      properties:
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                        apiGroup:
                                                          type: string
                                                    volumeMode:
                                                      type: string
                                                    volumeName:
                                                      type: string
                                                    accessModes:
                                                      type: array
                                                      items:
                                                        type: string
                                                    dataSourceRef:
                                                      type: object
                                                      properties:
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                        apiGroup:
                                                          type: string
                                                        namespace:
                                                          type: string
                                                    storageClassName:
                                                      type: string
                                                metadata:
                                                  type: object
                                                  properties:
                                                    uid:
                                                      type: string
                                                    name:
                                                      type: string
                                                    labels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    selfLink:
                                                      type: string
                                                    namespace:
                                                      type: string
                                                    finalizers:
                                                      type: array
                                                      items:
                                                        type: string
                                                    generation:
                                                      type: integer
                                                      format: int64
                                                    annotations:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    generateName:
                                                      type: string
                                                    managedFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          time:
                                                            type: string
                                                            format: date-time
                                                          manager:
                                                            type: string
                                                          fieldsV1:
                                                            type: object
                                                          operation:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                          fieldsType:
                                                            type: string
                                                          subresource:
                                                            type: string
                                                    ownerReferences:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          uid:
                                                            type: string
                                                          kind:
                                                            type: string
                                                          name:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                          controller:
                                                            type: boolean
                                                          blockOwnerDeletion:
                                                            type: boolean
                                                    resourceVersion:
                                                      type: string
                                                    creationTimestamp:
                                                      type: string
                                                      format: date-time
                                                    deletionTimestamp:
                                                      type: string
                                                      format: date-time
                                                    deletionGracePeriodSeconds:
                                                      type: integer
                                                      format: int64
                                        glusterfs:
                                          type: object
                                          properties:
                                            path:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            endpoints:
                                              type: string
                                        projected:
                                          type: object
                                          properties:
                                            sources:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  secret:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                      optional:
                                                        type: boolean
                                                  configMap:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                      optional:
                                                        type: boolean
                                                  downwardAPI:
                                                    type: object
                                                    properties:
                                                      items:
                                                        type: array
                                                        items:
                                                          type: object
                                                          properties:
                                                            mode:
                                                              type: integer
                                                              format: int32
                                                            path:
                                                              type: string
                                                            fieldRef:
                                                              type: object
                                                              properties:
                                                                fieldPath:
                                                                  type: string
                                                                apiVersion:
                                                                  type: string
                                                            resourceFieldRef:
                                                              type: object
                                                              properties:
                                                                divisor:
                                                                  type: string
                                                                resource:
                                                                  type: string
                                                                containerName:
                                                                  type: string
                                                  serviceAccountToken:
                                                    type: object
                                                    properties:
                                                      path:
                                                        type: string
                                                      audience:
                                                        type: string
                                                      expirationSeconds:
                                                        type: integer
                                                        format: int64
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        storageos:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                            volumeName:
                                              type: string
                                            volumeNamespace:
                                              type: string
                                        flexVolume:
                                          type: object
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            options:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                        downwardAPI:
                                          type: object
                                          properties:
                                            items:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  mode:
                                                    type: integer
                                                    format: int32
                                                  path:
                                                    type: string
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                            defaultMode:
                                              type: integer
                                              format: int32
                                        vsphereVolume:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            volumePath:
                                              type: string
                                            storagePolicyID:
                                              type: string
                                            storagePolicyName:
                                              type: string
                                        portworxVolume:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                        gcePersistentDisk:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            pdName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            partition:
                                              type: integer
                                              format: int32
                                        awsElasticBlockStore:
                                          type: object
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                            partition:
                                              type: integer
                                              format: int32
                                        photonPersistentDisk:
                                          type: object
                                          properties:
                                            pdID:
                                              type: string
                                            fsType:
                                              type: string
                                        persistentVolumeClaim:
                                          type: object
                                          properties:
                                            readOnly:
                                              type: boolean
                                            claimName:
                                              type: string
                                  affinity:
                                    type: object
                                    properties:
                                      podAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                topologyKey:
                                                  type: string
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                podAffinityTerm:
                                                  type: object
                                                  properties:
                                                    namespaces:
                                                      type: array
                                                      items:
                                                        type: string
                                                    topologyKey:
                                                      type: string
                                                    labelSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    namespaceSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                      nodeAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: object
                                            properties:
                                              nodeSelectorTerms:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    matchFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                preference:
                                                  type: object
                                                  properties:
                                                    matchFields:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                      podAntiAffinity:
                                        type: object
                                        properties:
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                namespaces:
                                                  type: array
                                                  items:
                                                    type: string
                                                topologyKey:
                                                  type: string
                                                labelSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                                namespaceSelector:
                                                  type: object
                                                  properties:
                                                    matchLabels:
                                                      type: object
                                                      additionalProperties:
                                                        type: string
                                                    matchExpressions:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          key:
                                                            type: string
                                                          values:
                                                            type: array
                                                            items:
                                                              type: string
                                                          operator:
                                                            type: string
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                weight:
                                                  type: integer
                                                  format: int32
                                                podAffinityTerm:
                                                  type: object
                                                  properties:
                                                    namespaces:
                                                      type: array
                                                      items:
                                                        type: string
                                                    topologyKey:
                                                      type: string
                                                    labelSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                                    namespaceSelector:
                                                      type: object
                                                      properties:
                                                        matchLabels:
                                                          type: object
                                                          additionalProperties:
                                                            type: string
                                                        matchExpressions:
                                                          type: array
                                                          items:
                                                            type: object
                                                            properties:
                                                              key:
                                                                type: string
                                                              values:
                                                                type: array
                                                                items:
                                                                  type: string
                                                              operator:
                                                                type: string
                                  hostname:
                                    type: string
                                  nodeName:
                                    type: string
                                  overhead:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  priority:
                                    type: integer
                                    format: int32
                                  dnsConfig:
                                    type: object
                                    properties:
                                      options:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                      searches:
                                        type: array
                                        items:
                                          type: string
                                      nameservers:
                                        type: array
                                        items:
                                          type: string
                                  dnsPolicy:
                                    type: string
                                  hostUsers:
                                    type: boolean
                                  subdomain:
                                    type: string
                                  containers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  hostAliases:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        ip:
                                          type: string
                                        hostnames:
                                          type: array
                                          items:
                                            type: string
                                  hostNetwork:
                                    type: boolean
                                  tolerations:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        key:
                                          type: string
                                        value:
                                          type: string
                                        effect:
                                          type: string
                                        operator:
                                          type: string
                                        tolerationSeconds:
                                          type: integer
                                          format: int64
                                  nodeSelector:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  restartPolicy:
                                    type: string
                                  schedulerName:
                                    type: string
                                  initContainers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  readinessGates:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        conditionType:
                                          type: string
                                  resourceClaims:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        source:
                                          type: object
                                          properties:
                                            resourceClaimName:
                                              type: string
                                            resourceClaimTemplateName:
                                              type: string
                                  serviceAccount:
                                    type: string
                                  schedulingGates:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      fsGroup:
                                        type: integer
                                        format: int64
                                      sysctls:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      supplementalGroups:
                                        type: array
                                        items:
                                          type: integer
                                          format: int64
                                      fsGroupChangePolicy:
                                        type: string
                                  imagePullSecrets:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                  preemptionPolicy:
                                    type: string
                                  runtimeClassName:
                                    type: string
                                  priorityClassName:
                                    type: string
                                  setHostnameAsFQDN:
                                    type: boolean
                                  enableServiceLinks:
                                    type: boolean
                                  serviceAccountName:
                                    type: string
                                  ephemeralContainers:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        env:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                type: object
                                                properties:
                                                  fieldRef:
                                                    type: object
                                                    properties:
                                                      fieldPath:
                                                        type: string
                                                      apiVersion:
                                                        type: string
                                                  secretKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  configMapKeyRef:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                  resourceFieldRef:
                                                    type: object
                                                    properties:
                                                      divisor:
                                                        type: string
                                                      resource:
                                                        type: string
                                                      containerName:
                                                        type: string
                                        tty:
                                          type: boolean
                                        args:
                                          type: array
                                          items:
                                            type: string
                                        name:
                                          type: string
                                        image:
                                          type: string
                                        ports:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              hostIP:
                                                type: string
                                              hostPort:
                                                type: integer
                                                format: int32
                                              protocol:
                                                type: string
                                              containerPort:
                                                type: integer
                                                format: int32
                                        stdin:
                                          type: boolean
                                        command:
                                          type: array
                                          items:
                                            type: string
                                        envFrom:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              prefix:
                                                type: string
                                              secretRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                              configMapRef:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  optional:
                                                    type: boolean
                                        lifecycle:
                                          type: object
                                          properties:
                                            preStop:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                            postStart:
                                              type: object
                                              properties:
                                                exec:
                                                  type: object
                                                  properties:
                                                    command:
                                                      type: array
                                                      items:
                                                        type: string
                                                httpGet:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    path:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                                    scheme:
                                                      type: string
                                                    httpHeaders:
                                                      type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                tcpSocket:
                                                  type: object
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      type: string
                                                      format: int-or-string
                                        resources:
                                          type: object
                                          properties:
                                            claims:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                            limits:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            requests:
                                              type: object
                                              additionalProperties:
                                                type: string
                                        stdinOnce:
                                          type: boolean
                                        workingDir:
                                          type: string
                                        resizePolicy:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                        startupProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        volumeMounts:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              subPath:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              mountPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                              mountPropagation:
                                                type: string
                                        livenessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        restartPolicy:
                                          type: string
                                        volumeDevices:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              devicePath:
                                                type: string
                                        readinessProbe:
                                          type: object
                                          properties:
                                            exec:
                                              type: object
                                              properties:
                                                command:
                                                  type: array
                                                  items:
                                                    type: string
                                            grpc:
                                              type: object
                                              properties:
                                                port:
                                                  type: integer
                                                  format: int32
                                                service:
                                                  type: string
                                            httpGet:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                path:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                                scheme:
                                                  type: string
                                                httpHeaders:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                            tcpSocket:
                                              type: object
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  type: string
                                                  format: int-or-string
                                            periodSeconds:
                                              type: integer
                                              format: int32
                                            timeoutSeconds:
                                              type: integer
                                              format: int32
                                            failureThreshold:
                                              type: integer
                                              format: int32
                                            successThreshold:
                                              type: integer
                                              format: int32
                                            initialDelaySeconds:
                                              type: integer
                                              format: int32
                                            terminationGracePeriodSeconds:
                                              type: integer
                                              format: int64
                                        imagePullPolicy:
                                          type: string
                                        securityContext:
                                          type: object
                                          properties:
                                            procMount:
                                              type: string
                                            runAsUser:
                                              type: integer
                                              format: int64
                                            privileged:
                                              type: boolean
                                            runAsGroup:
                                              type: integer
                                              format: int64
                                            capabilities:
                                              type: object
                                              properties:
                                                add:
                                                  type: array
                                                  items:
                                                    type: string
                                                drop:
                                                  type: array
                                                  items:
                                                    type: string
                                            runAsNonRoot:
                                              type: boolean
                                            seLinuxOptions:
                                              type: object
                                              properties:
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                                level:
                                                  type: string
                                            seccompProfile:
                                              type: object
                                              properties:
                                                type:
                                                  type: string
                                                localhostProfile:
                                                  type: string
                                            windowsOptions:
                                              type: object
                                              properties:
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            allowPrivilegeEscalation:
                                              type: boolean
                                        targetContainerName:
                                          type: string
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                  activeDeadlineSeconds:
                                    type: integer
                                    format: int64
                                  shareProcessNamespace:
                                    type: boolean
                                  topologySpreadConstraints:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        maxSkew:
                                          type: integer
                                          format: int32
                                        minDomains:
                                          type: integer
                                          format: int32
                                        topologyKey:
                                          type: string
                                        labelSelector:
                                          type: object
                                          properties:
                                            matchLabels:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            matchExpressions:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  key:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                  operator:
                                                    type: string
                                        matchLabelKeys:
                                          type: array
                                          items:
                                            type: string
                                        nodeTaintsPolicy:
                                          type: string
                                        whenUnsatisfiable:
                                          type: string
                                        nodeAffinityPolicy:
                                          type: string
                                  automountServiceAccountToken:
                                    type: boolean
                                  terminationGracePeriodSeconds:
                                    type: integer
                                    format: int64
                              metadata:
                                type: object
                                properties:
                                  uid:
                                    type: string
                                  name:
                                    type: string
                                  labels:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  selfLink:
                                    type: string
                                  namespace:
                                    type: string
                                  finalizers:
                                    type: array
                                    items:
                                      type: string
                                  generation:
                                    type: integer
                                    format: int64
                                  annotations:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  generateName:
                                    type: string
                                  managedFields:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        time:
                                          type: string
                                          format: date-time
                                        manager:
                                          type: string
                                        fieldsV1:
                                          type: object
                                        operation:
                                          type: string
                                        apiVersion:
                                          type: string
                                        fieldsType:
                                          type: string
                                        subresource:
                                          type: string
                                  ownerReferences:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        uid:
                                          type: string
                                        kind:
                                          type: string
                                        name:
                                          type: string
                                        apiVersion:
                                          type: string
                                        controller:
                                          type: boolean
                                        blockOwnerDeletion:
                                          type: boolean
                                  resourceVersion:
                                    type: string
                                  creationTimestamp:
                                    type: string
                                    format: date-time
                                  deletionTimestamp:
                                    type: string
                                    format: date-time
                                  deletionGracePeriodSeconds:
                                    type: integer
                                    format: int64
                            description: See PodTemplateSpec
                              (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core)
                              for more details
                          configOverrides:
                            type: object
                            default: {}
                            additionalProperties:
                              type: object
                              additionalProperties:
                                type: string
                    cliOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    envOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    podOverrides:
                      type: object
                      default: {}
                      properties:
                        spec:
                          type: object
                          properties:
                            os:
                              type: object
                              properties:
                                name:
                                  type: string
                            hostIPC:
                              type: boolean
                            hostPID:
                              type: boolean
                            volumes:
                              type: array
                              items:
                                type: object
                                properties:
                                  fc:
                                    type: object
                                    properties:
                                      lun:
                                        type: integer
                                        format: int32
                                      wwids:
                                        type: array
                                        items:
                                          type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      targetWWNs:
                                        type: array
                                        items:
                                          type: string
                                  csi:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeAttributes:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      nodePublishSecretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  nfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      server:
                                        type: string
                                      readOnly:
                                        type: boolean
                                  rbd:
                                    type: object
                                    properties:
                                      pool:
                                        type: string
                                      user:
                                        type: string
                                      image:
                                        type: string
                                      fsType:
                                        type: string
                                      keyring:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  name:
                                    type: string
                                  iscsi:
                                    type: object
                                    properties:
                                      iqn:
                                        type: string
                                      lun:
                                        type: integer
                                        format: int32
                                      fsType:
                                        type: string
                                      portals:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      targetPortal:
                                        type: string
                                      initiatorName:
                                        type: string
                                      iscsiInterface:
                                        type: string
                                      chapAuthSession:
                                        type: boolean
                                      chapAuthDiscovery:
                                        type: boolean
                                  cephfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      user:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      secretFile:
                                        type: string
                                  cinder:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  secret:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      secretName:
                                        type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  flocker:
                                    type: object
                                    properties:
                                      datasetName:
                                        type: string
                                      datasetUUID:
                                        type: string
                                  gitRepo:
                                    type: object
                                    properties:
                                      revision:
                                        type: string
                                      directory:
                                        type: string
                                      repository:
                                        type: string
                                  quobyte:
                                    type: object
                                    properties:
                                      user:
                                        type: string
                                      group:
                                        type: string
                                      tenant:
                                        type: string
                                      volume:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      registry:
                                        type: string
                                  scaleIO:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      system:
                                        type: string
                                      gateway:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      sslEnabled:
                                        type: boolean
                                      volumeName:
                                        type: string
                                      storageMode:
                                        type: string
                                      storagePool:
                                        type: string
                                      protectionDomain:
                                        type: string
                                  emptyDir:
                                    type: object
                                    properties:
                                      medium:
                                        type: string
                                      sizeLimit:
                                        type: string
                                  hostPath:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      type:
                                        type: string
                                  azureDisk:
                                    type: object
                                    properties:
                                      kind:
                                        type: string
                                      fsType:
                                        type: string
                                      diskURI:
                                        type: string
                                      diskName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      cachingMode:
                                        type: string
                                  azureFile:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      shareName:
                                        type: string
                                      secretName:
                                        type: string
                                  configMap:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  ephemeral:
                                    type: object
                                    properties:
                                      volumeClaimTemplate:
                                        type: object
                                        properties:
                                          spec:
                                            type: object
                                            properties:
                                              selector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              resources:
                                                type: object
                                                properties:
                                                  claims:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        name:
                                                          type: string
                                                  limits:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  requests:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                              dataSource:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                              volumeMode:
                                                type: string
                                              volumeName:
                                                type: string
                                              accessModes:
                                                type: array
                                                items:
                                                  type: string
                                              dataSourceRef:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                                  namespace:
                                                    type: string
                                              storageClassName:
                                                type: string
                                          metadata:
                                            type: object
                                            properties:
                                              uid:
                                                type: string
                                              name:
                                                type: string
                                              labels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              selfLink:
                                                type: string
                                              namespace:
                                                type: string
                                              finalizers:
                                                type: array
                                                items:
                                                  type: string
                                              generation:
                                                type: integer
                                                format: int64
                                              annotations:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              generateName:
                                                type: string
                                              managedFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    time:
                                                      type: string
                                                      format: date-time
                                                    manager:
                                                      type: string
                                                    fieldsV1:
                                                      type: object
                                                    operation:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    fieldsType:
                                                      type: string
                                                    subresource:
                                                      type: string
                                              ownerReferences:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    uid:
                                                      type: string
                                                    kind:
                                                      type: string
                                                    name:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    controller:
                                                      type: boolean
                                                    blockOwnerDeletion:
                                                      type: boolean
                                              resourceVersion:
                                                type: string
                                              creationTimestamp:
                                                type: string
                                                format: date-time
                                              deletionTimestamp:
                                                type: string
                                                format: date-time
                                              deletionGracePeriodSeconds:
                                                type: integer
                                                format: int64
                                  glusterfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      endpoints:
                                        type: string
                                  projected:
                                    type: object
                                    properties:
                                      sources:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            secret:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            configMap:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            downwardAPI:
                                              type: object
                                              properties:
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                      fieldRef:
                                                        type: object
                                                        properties:
                                                          fieldPath:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                      resourceFieldRef:
                                                        type: object
                                                        properties:
                                                          divisor:
                                                            type: string
                                                          resource:
                                                            type: string
                                                          containerName:
                                                            type: string
                                            serviceAccountToken:
                                              type: object
                                              properties:
                                                path:
                                                  type: string
                                                audience:
                                                  type: string
                                                expirationSeconds:
                                                  type: integer
                                                  format: int64
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  storageos:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      volumeName:
                                        type: string
                                      volumeNamespace:
                                        type: string
                                  flexVolume:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      options:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  downwardAPI:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  vsphereVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      volumePath:
                                        type: string
                                      storagePolicyID:
                                        type: string
                                      storagePolicyName:
                                        type: string
                                  portworxVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                  gcePersistentDisk:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      pdName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      partition:
                                        type: integer
                                        format: int32
                                  awsElasticBlockStore:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      partition:
                                        type: integer
                                        format: int32
                                  photonPersistentDisk:
                                    type: object
                                    properties:
                                      pdID:
                                        type: string
                                      fsType:
                                        type: string
                                  persistentVolumeClaim:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      claimName:
                                        type: string
                            affinity:
                              type: object
                              properties:
                                podAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                nodeAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: object
                                      properties:
                                        nodeSelectorTerms:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          preference:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                podAntiAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                            hostname:
                              type: string
                            nodeName:
                              type: string
                            overhead:
                              type: object
                              additionalProperties:
                                type: string
                            priority:
                              type: integer
                              format: int32
                            dnsConfig:
                              type: object
                              properties:
                                options:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                searches:
                                  type: array
                                  items:
                                    type: string
                                nameservers:
                                  type: array
                                  items:
                                    type: string
                            dnsPolicy:
                              type: string
                            hostUsers:
                              type: boolean
                            subdomain:
                              type: string
                            containers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            hostAliases:
                              type: array
                              items:
                                type: object
                                properties:
                                  ip:
                                    type: string
                                  hostnames:
                                    type: array
                                    items:
                                      type: string
                            hostNetwork:
                              type: boolean
                            tolerations:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                                  effect:
                                    type: string
                                  operator:
                                    type: string
                                  tolerationSeconds:
                                    type: integer
                                    format: int64
                            nodeSelector:
                              type: object
                              additionalProperties:
                                type: string
                            restartPolicy:
                              type: string
                            schedulerName:
                              type: string
                            initContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            readinessGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  conditionType:
                                    type: string
                            resourceClaims:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                                  source:
                                    type: object
                                    properties:
                                      resourceClaimName:
                                        type: string
                                      resourceClaimTemplateName:
                                        type: string
                            serviceAccount:
                              type: string
                            schedulingGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            securityContext:
                              type: object
                              properties:
                                fsGroup:
                                  type: integer
                                  format: int64
                                sysctls:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                runAsUser:
                                  type: integer
                                  format: int64
                                runAsGroup:
                                  type: integer
                                  format: int64
                                runAsNonRoot:
                                  type: boolean
                                seLinuxOptions:
                                  type: object
                                  properties:
                                    role:
                                      type: string
                                    type:
                                      type: string
                                    user:
                                      type: string
                                    level:
                                      type: string
                                seccompProfile:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                    localhostProfile:
                                      type: string
                                windowsOptions:
                                  type: object
                                  properties:
                                    hostProcess:
                                      type: boolean
                                    runAsUserName:
                                      type: string
                                    gmsaCredentialSpec:
                                      type: string
                                    gmsaCredentialSpecName:
                                      type: string
                                supplementalGroups:
                                  type: array
                                  items:
                                    type: integer
                                    format: int64
                                fsGroupChangePolicy:
                                  type: string
                            imagePullSecrets:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            preemptionPolicy:
                              type: string
                            runtimeClassName:
                              type: string
                            priorityClassName:
                              type: string
                            setHostnameAsFQDN:
                              type: boolean
                            enableServiceLinks:
                              type: boolean
                            serviceAccountName:
                              type: string
                            ephemeralContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  targetContainerName:
                                    type: string
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            activeDeadlineSeconds:
                              type: integer
                              format: int64
                            shareProcessNamespace:
                              type: boolean
                            topologySpreadConstraints:
                              type: array
                              items:
                                type: object
                                properties:
                                  maxSkew:
                                    type: integer
                                    format: int32
                                  minDomains:
                                    type: integer
                                    format: int32
                                  topologyKey:
                                    type: string
                                  labelSelector:
                                    type: object
                                    properties:
                                      matchLabels:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      matchExpressions:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                            operator:
                                              type: string
                                  matchLabelKeys:
                                    type: array
                                    items:
                                      type: string
                                  nodeTaintsPolicy:
                                    type: string
                                  whenUnsatisfiable:
                                    type: string
                                  nodeAffinityPolicy:
                                    type: string
                            automountServiceAccountToken:
                              type: boolean
                            terminationGracePeriodSeconds:
                              type: integer
                              format: int64
                        metadata:
                          type: object
                          properties:
                            uid:
                              type: string
                            name:
                              type: string
                            labels:
                              type: object
                              additionalProperties:
                                type: string
                            selfLink:
                              type: string
                            namespace:
                              type: string
                            finalizers:
                              type: array
                              items:
                                type: string
                            generation:
                              type: integer
                              format: int64
                            annotations:
                              type: object
                              additionalProperties:
                                type: string
                            generateName:
                              type: string
                            managedFields:
                              type: array
                              items:
                                type: object
                                properties:
                                  time:
                                    type: string
                                    format: date-time
                                  manager:
                                    type: string
                                  fieldsV1:
                                    type: object
                                  operation:
                                    type: string
                                  apiVersion:
                                    type: string
                                  fieldsType:
                                    type: string
                                  subresource:
                                    type: string
                            ownerReferences:
                              type: array
                              items:
                                type: object
                                properties:
                                  uid:
                                    type: string
                                  kind:
                                    type: string
                                  name:
                                    type: string
                                  apiVersion:
                                    type: string
                                  controller:
                                    type: boolean
                                  blockOwnerDeletion:
                                    type: boolean
                            resourceVersion:
                              type: string
                            creationTimestamp:
                              type: string
                              format: date-time
                            deletionTimestamp:
                              type: string
                              format: date-time
                            deletionGracePeriodSeconds:
                              type: integer
                              format: int64
                      description: See PodTemplateSpec
                        (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core)
                        for more details
                    configOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: object
                        additionalProperties:
                          type: string
                  description: This struct represents a role - e.g. HDFS datanodes or Trino
                    workers. It has a [`HashMap`] containing all the roleGroups
                    that are part of this role. Additionally, there is a
                    `config`, which is configurable at the role *and* roleGroup
                    level. Everything at roleGroup level is merged on top of
                    what is configured on role level using the [`Merge`] trait.
                    There is also a second form of config, which can only be
                    configured at role level, the `roleConfig`.
                clusterOperation:
                  type: object
                  default:
                    stopped: false
                    reconciliationPaused: false
                  properties:
                    stopped:
                      type: boolean
                      default: false
                      description: Flag to stop the cluster. This means all deployed resources (e.g.
                        Services, StatefulSets, ConfigMaps) are kept but all
                        deployed Pods (e.g. replicas from a StatefulSet) are
                        scaled to 0 and therefore stopped and removed. If
                        applied at the same time with `reconciliationPaused`,
                        the latter will pause reconciliation and `stopped` will
                        take no effect until `reconciliationPaused` is set to
                        false or removed.
                    reconciliationPaused:
                      type: boolean
                      default: false
                      description: Flag to stop cluster reconciliation by the operator. This means
                        that all changes in the custom resource spec are ignored
                        until this flag is set to false or removed. The operator
                        will however still watch the deployed resources at the
                        time and update the custom resource status field. If
                        applied at the same time with `stopped`,
                        `reconciliationPaused` will take precedence over
                        `stopped` and stop the reconciliation immediately.
                  description: Cluster operations like pause reconciliation or cluster stop.
                kubernetesExecutors:
                  type: object
                  properties:
                    config:
                      type: object
                      default: {}
                      properties:
                        logging:
                          type: object
                          default:
                            containers: {}
                            enableVectorAgent: null
                          properties:
                            containers:
                              type: object
                              description: Log configuration per container
                              additionalProperties:
                                type: object
                                anyOf:
                                  - required:
                                      - custom
                                  - {}
                                properties:
                                  file:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the file appender
                                  custom:
                                    type: object
                                    properties:
                                      configMap:
                                        type: string
                                        nullable: true
                                        description: ConfigMap containing the log configuration files
                                    description: Custom log configuration provided in a ConfigMap
                                  console:
                                    type: object
                                    nullable: true
                                    properties:
                                      level:
                                        enum:
                                          - TRACE
                                          - DEBUG
                                          - INFO
                                          - WARN
                                          - ERROR
                                          - FATAL
                                          - NONE
                                        type: string
                                        nullable: true
                                        description: The log level threshold. Log events with a lower log level are
                                          discarded.
                                    description: Configuration for the console appender
                                  loggers:
                                    type: object
                                    default: {}
                                    description: Configuration per logger
                                    additionalProperties:
                                      type: object
                                      properties:
                                        level:
                                          enum:
                                            - TRACE
                                            - DEBUG
                                            - INFO
                                            - WARN
                                            - ERROR
                                            - FATAL
                                            - NONE
                                          type: string
                                          nullable: true
                                          description: The log level threshold. Log events with a lower log level are
                                            discarded.
                                      description: Configuration of a logger
                                description: Log configuration of the container
                            enableVectorAgent:
                              type: boolean
                              nullable: true
                              description: Wether or not to deploy a container with the Vector log agent
                          description: Logging configuration
                        resources:
                          type: object
                          default:
                            cpu:
                              max: null
                              min: null
                            memory:
                              limit: null
                              runtimeLimits: {}
                            storage: {}
                          properties:
                            cpu:
                              type: object
                              default:
                                max: null
                                min: null
                              properties:
                                max:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                min:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                            memory:
                              type: object
                              properties:
                                limit:
                                  type: string
                                  nullable: true
                                  description: >-
                                    Quantity is a fixed-point representation of
                                    a number. It provides convenient
                                    marshaling/unmarshaling in JSON and YAML, in
                                    addition to String() and AsInt64()
                                    accessors.


                                    The serialization format is:


                                    ``` <quantity>        ::=
                                    <signedNumber><suffix>

                                    	(Note that <suffix> may be empty, from the "" case in <decimalSI>.)

                                    <digit>           ::= 0 | 1 | ... | 9
                                    <digits>          ::= <digit> |
                                    <digit><digits> <number>          ::=
                                    <digits> | <digits>.<digits> | <digits>. |
                                    .<digits> <sign>            ::= "+" | "-"
                                    <signedNumber>    ::= <number> |
                                    <sign><number> <suffix>          ::=
                                    <binarySI> | <decimalExponent> | <decimalSI>
                                    <binarySI>        ::= Ki | Mi | Gi | Ti | Pi
                                    | Ei

                                    	(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)

                                    <decimalSI>       ::= m | "" | k | M | G | T
                                    | P | E

                                    	(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)

                                    <decimalExponent> ::= "e" <signedNumber> |
                                    "E" <signedNumber> ```


                                    No matter which of the three exponent forms
                                    is used, no quantity may represent a number
                                    greater than 2^63-1 in magnitude, nor may it
                                    have more than 3 decimal places. Numbers
                                    larger or more precise will be capped or
                                    rounded up. (E.g.: 0.1m will rounded up to
                                    1m.) This may be extended in the future if
                                    we require larger or smaller quantities.


                                    When a Quantity is parsed from a string, it
                                    will remember the type of suffix it had, and
                                    will use the same type again when it is
                                    serialized.


                                    Before serializing, Quantity will be put in
                                    "canonical form". This means that
                                    Exponent/suffix will be adjusted up or down
                                    (with a corresponding increase or decrease
                                    in Mantissa) such that:


                                    - No precision is lost - No fractional
                                    digits will be emitted - The exponent (or
                                    suffix) is as large as possible.


                                    The sign will be omitted unless the number
                                    is negative.


                                    Examples:


                                    - 1.5 will be serialized as "1500m" - 1.5Gi
                                    will be serialized as "1536Mi"


                                    Note that the quantity will NEVER be
                                    internally represented by a floating point
                                    number. That is the whole point of this
                                    exercise.


                                    Non-canonical values will still parse as
                                    long as they are well formed, but will be
                                    re-emitted in their canonical form. (So
                                    always use canonical form, or don't diff.)


                                    This format is intended to make it difficult
                                    to use these numbers without writing some
                                    sort of special handling code in the hopes
                                    that that will cause implementors to also
                                    use a fixed point implementation.
                                runtimeLimits:
                                  type: object
                            storage:
                              type: object
                        gracefulShutdownTimeout:
                          type: string
                          nullable: true
                          description: Time period Pods have to gracefully shut down, e.g. `30m`, `1h` or
                            `2d`. Consult the operator documentation for
                            details.
                    cliOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    envOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: string
                    podOverrides:
                      type: object
                      default: {}
                      properties:
                        spec:
                          type: object
                          properties:
                            os:
                              type: object
                              properties:
                                name:
                                  type: string
                            hostIPC:
                              type: boolean
                            hostPID:
                              type: boolean
                            volumes:
                              type: array
                              items:
                                type: object
                                properties:
                                  fc:
                                    type: object
                                    properties:
                                      lun:
                                        type: integer
                                        format: int32
                                      wwids:
                                        type: array
                                        items:
                                          type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      targetWWNs:
                                        type: array
                                        items:
                                          type: string
                                  csi:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeAttributes:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      nodePublishSecretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  nfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      server:
                                        type: string
                                      readOnly:
                                        type: boolean
                                  rbd:
                                    type: object
                                    properties:
                                      pool:
                                        type: string
                                      user:
                                        type: string
                                      image:
                                        type: string
                                      fsType:
                                        type: string
                                      keyring:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  name:
                                    type: string
                                  iscsi:
                                    type: object
                                    properties:
                                      iqn:
                                        type: string
                                      lun:
                                        type: integer
                                        format: int32
                                      fsType:
                                        type: string
                                      portals:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      targetPortal:
                                        type: string
                                      initiatorName:
                                        type: string
                                      iscsiInterface:
                                        type: string
                                      chapAuthSession:
                                        type: boolean
                                      chapAuthDiscovery:
                                        type: boolean
                                  cephfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      user:
                                        type: string
                                      monitors:
                                        type: array
                                        items:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      secretFile:
                                        type: string
                                  cinder:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  secret:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      secretName:
                                        type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  flocker:
                                    type: object
                                    properties:
                                      datasetName:
                                        type: string
                                      datasetUUID:
                                        type: string
                                  gitRepo:
                                    type: object
                                    properties:
                                      revision:
                                        type: string
                                      directory:
                                        type: string
                                      repository:
                                        type: string
                                  quobyte:
                                    type: object
                                    properties:
                                      user:
                                        type: string
                                      group:
                                        type: string
                                      tenant:
                                        type: string
                                      volume:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      registry:
                                        type: string
                                  scaleIO:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      system:
                                        type: string
                                      gateway:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      sslEnabled:
                                        type: boolean
                                      volumeName:
                                        type: string
                                      storageMode:
                                        type: string
                                      storagePool:
                                        type: string
                                      protectionDomain:
                                        type: string
                                  emptyDir:
                                    type: object
                                    properties:
                                      medium:
                                        type: string
                                      sizeLimit:
                                        type: string
                                  hostPath:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      type:
                                        type: string
                                  azureDisk:
                                    type: object
                                    properties:
                                      kind:
                                        type: string
                                      fsType:
                                        type: string
                                      diskURI:
                                        type: string
                                      diskName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      cachingMode:
                                        type: string
                                  azureFile:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      shareName:
                                        type: string
                                      secretName:
                                        type: string
                                  configMap:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                      optional:
                                        type: boolean
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  ephemeral:
                                    type: object
                                    properties:
                                      volumeClaimTemplate:
                                        type: object
                                        properties:
                                          spec:
                                            type: object
                                            properties:
                                              selector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              resources:
                                                type: object
                                                properties:
                                                  claims:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        name:
                                                          type: string
                                                  limits:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  requests:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                              dataSource:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                              volumeMode:
                                                type: string
                                              volumeName:
                                                type: string
                                              accessModes:
                                                type: array
                                                items:
                                                  type: string
                                              dataSourceRef:
                                                type: object
                                                properties:
                                                  kind:
                                                    type: string
                                                  name:
                                                    type: string
                                                  apiGroup:
                                                    type: string
                                                  namespace:
                                                    type: string
                                              storageClassName:
                                                type: string
                                          metadata:
                                            type: object
                                            properties:
                                              uid:
                                                type: string
                                              name:
                                                type: string
                                              labels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              selfLink:
                                                type: string
                                              namespace:
                                                type: string
                                              finalizers:
                                                type: array
                                                items:
                                                  type: string
                                              generation:
                                                type: integer
                                                format: int64
                                              annotations:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              generateName:
                                                type: string
                                              managedFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    time:
                                                      type: string
                                                      format: date-time
                                                    manager:
                                                      type: string
                                                    fieldsV1:
                                                      type: object
                                                    operation:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    fieldsType:
                                                      type: string
                                                    subresource:
                                                      type: string
                                              ownerReferences:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    uid:
                                                      type: string
                                                    kind:
                                                      type: string
                                                    name:
                                                      type: string
                                                    apiVersion:
                                                      type: string
                                                    controller:
                                                      type: boolean
                                                    blockOwnerDeletion:
                                                      type: boolean
                                              resourceVersion:
                                                type: string
                                              creationTimestamp:
                                                type: string
                                                format: date-time
                                              deletionTimestamp:
                                                type: string
                                                format: date-time
                                              deletionGracePeriodSeconds:
                                                type: integer
                                                format: int64
                                  glusterfs:
                                    type: object
                                    properties:
                                      path:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      endpoints:
                                        type: string
                                  projected:
                                    type: object
                                    properties:
                                      sources:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            secret:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            configMap:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      key:
                                                        type: string
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                optional:
                                                  type: boolean
                                            downwardAPI:
                                              type: object
                                              properties:
                                                items:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      mode:
                                                        type: integer
                                                        format: int32
                                                      path:
                                                        type: string
                                                      fieldRef:
                                                        type: object
                                                        properties:
                                                          fieldPath:
                                                            type: string
                                                          apiVersion:
                                                            type: string
                                                      resourceFieldRef:
                                                        type: object
                                                        properties:
                                                          divisor:
                                                            type: string
                                                          resource:
                                                            type: string
                                                          containerName:
                                                            type: string
                                            serviceAccountToken:
                                              type: object
                                              properties:
                                                path:
                                                  type: string
                                                audience:
                                                  type: string
                                                expirationSeconds:
                                                  type: integer
                                                  format: int64
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  storageos:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                      volumeName:
                                        type: string
                                      volumeNamespace:
                                        type: string
                                  flexVolume:
                                    type: object
                                    properties:
                                      driver:
                                        type: string
                                      fsType:
                                        type: string
                                      options:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      readOnly:
                                        type: boolean
                                      secretRef:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                                  downwardAPI:
                                    type: object
                                    properties:
                                      items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            mode:
                                              type: integer
                                              format: int32
                                            path:
                                              type: string
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                      defaultMode:
                                        type: integer
                                        format: int32
                                  vsphereVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      volumePath:
                                        type: string
                                      storagePolicyID:
                                        type: string
                                      storagePolicyName:
                                        type: string
                                  portworxVolume:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                  gcePersistentDisk:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      pdName:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      partition:
                                        type: integer
                                        format: int32
                                  awsElasticBlockStore:
                                    type: object
                                    properties:
                                      fsType:
                                        type: string
                                      readOnly:
                                        type: boolean
                                      volumeID:
                                        type: string
                                      partition:
                                        type: integer
                                        format: int32
                                  photonPersistentDisk:
                                    type: object
                                    properties:
                                      pdID:
                                        type: string
                                      fsType:
                                        type: string
                                  persistentVolumeClaim:
                                    type: object
                                    properties:
                                      readOnly:
                                        type: boolean
                                      claimName:
                                        type: string
                            affinity:
                              type: object
                              properties:
                                podAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                nodeAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: object
                                      properties:
                                        nodeSelectorTerms:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          preference:
                                            type: object
                                            properties:
                                              matchFields:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                podAntiAffinity:
                                  type: object
                                  properties:
                                    requiredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          namespaces:
                                            type: array
                                            items:
                                              type: string
                                          topologyKey:
                                            type: string
                                          labelSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                          namespaceSelector:
                                            type: object
                                            properties:
                                              matchLabels:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              matchExpressions:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    key:
                                                      type: string
                                                    values:
                                                      type: array
                                                      items:
                                                        type: string
                                                    operator:
                                                      type: string
                                    preferredDuringSchedulingIgnoredDuringExecution:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          weight:
                                            type: integer
                                            format: int32
                                          podAffinityTerm:
                                            type: object
                                            properties:
                                              namespaces:
                                                type: array
                                                items:
                                                  type: string
                                              topologyKey:
                                                type: string
                                              labelSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                                              namespaceSelector:
                                                type: object
                                                properties:
                                                  matchLabels:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  matchExpressions:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        key:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                        operator:
                                                          type: string
                            hostname:
                              type: string
                            nodeName:
                              type: string
                            overhead:
                              type: object
                              additionalProperties:
                                type: string
                            priority:
                              type: integer
                              format: int32
                            dnsConfig:
                              type: object
                              properties:
                                options:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                searches:
                                  type: array
                                  items:
                                    type: string
                                nameservers:
                                  type: array
                                  items:
                                    type: string
                            dnsPolicy:
                              type: string
                            hostUsers:
                              type: boolean
                            subdomain:
                              type: string
                            containers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            hostAliases:
                              type: array
                              items:
                                type: object
                                properties:
                                  ip:
                                    type: string
                                  hostnames:
                                    type: array
                                    items:
                                      type: string
                            hostNetwork:
                              type: boolean
                            tolerations:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                                  effect:
                                    type: string
                                  operator:
                                    type: string
                                  tolerationSeconds:
                                    type: integer
                                    format: int64
                            nodeSelector:
                              type: object
                              additionalProperties:
                                type: string
                            restartPolicy:
                              type: string
                            schedulerName:
                              type: string
                            initContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            readinessGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  conditionType:
                                    type: string
                            resourceClaims:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                                  source:
                                    type: object
                                    properties:
                                      resourceClaimName:
                                        type: string
                                      resourceClaimTemplateName:
                                        type: string
                            serviceAccount:
                              type: string
                            schedulingGates:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            securityContext:
                              type: object
                              properties:
                                fsGroup:
                                  type: integer
                                  format: int64
                                sysctls:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      value:
                                        type: string
                                runAsUser:
                                  type: integer
                                  format: int64
                                runAsGroup:
                                  type: integer
                                  format: int64
                                runAsNonRoot:
                                  type: boolean
                                seLinuxOptions:
                                  type: object
                                  properties:
                                    role:
                                      type: string
                                    type:
                                      type: string
                                    user:
                                      type: string
                                    level:
                                      type: string
                                seccompProfile:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                    localhostProfile:
                                      type: string
                                windowsOptions:
                                  type: object
                                  properties:
                                    hostProcess:
                                      type: boolean
                                    runAsUserName:
                                      type: string
                                    gmsaCredentialSpec:
                                      type: string
                                    gmsaCredentialSpecName:
                                      type: string
                                supplementalGroups:
                                  type: array
                                  items:
                                    type: integer
                                    format: int64
                                fsGroupChangePolicy:
                                  type: string
                            imagePullSecrets:
                              type: array
                              items:
                                type: object
                                properties:
                                  name:
                                    type: string
                            preemptionPolicy:
                              type: string
                            runtimeClassName:
                              type: string
                            priorityClassName:
                              type: string
                            setHostnameAsFQDN:
                              type: boolean
                            enableServiceLinks:
                              type: boolean
                            serviceAccountName:
                              type: string
                            ephemeralContainers:
                              type: array
                              items:
                                type: object
                                properties:
                                  env:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        value:
                                          type: string
                                        valueFrom:
                                          type: object
                                          properties:
                                            fieldRef:
                                              type: object
                                              properties:
                                                fieldPath:
                                                  type: string
                                                apiVersion:
                                                  type: string
                                            secretKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            configMapKeyRef:
                                              type: object
                                              properties:
                                                key:
                                                  type: string
                                                name:
                                                  type: string
                                                optional:
                                                  type: boolean
                                            resourceFieldRef:
                                              type: object
                                              properties:
                                                divisor:
                                                  type: string
                                                resource:
                                                  type: string
                                                containerName:
                                                  type: string
                                  tty:
                                    type: boolean
                                  args:
                                    type: array
                                    items:
                                      type: string
                                  name:
                                    type: string
                                  image:
                                    type: string
                                  ports:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        hostIP:
                                          type: string
                                        hostPort:
                                          type: integer
                                          format: int32
                                        protocol:
                                          type: string
                                        containerPort:
                                          type: integer
                                          format: int32
                                  stdin:
                                    type: boolean
                                  command:
                                    type: array
                                    items:
                                      type: string
                                  envFrom:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        prefix:
                                          type: string
                                        secretRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                        configMapRef:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            optional:
                                              type: boolean
                                  lifecycle:
                                    type: object
                                    properties:
                                      preStop:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                      postStart:
                                        type: object
                                        properties:
                                          exec:
                                            type: object
                                            properties:
                                              command:
                                                type: array
                                                items:
                                                  type: string
                                          httpGet:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              path:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                              scheme:
                                                type: string
                                              httpHeaders:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    name:
                                                      type: string
                                                    value:
                                                      type: string
                                          tcpSocket:
                                            type: object
                                            properties:
                                              host:
                                                type: string
                                              port:
                                                type: string
                                                format: int-or-string
                                  resources:
                                    type: object
                                    properties:
                                      claims:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                      limits:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      requests:
                                        type: object
                                        additionalProperties:
                                          type: string
                                  stdinOnce:
                                    type: boolean
                                  workingDir:
                                    type: string
                                  resizePolicy:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        resourceName:
                                          type: string
                                        restartPolicy:
                                          type: string
                                  startupProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  volumeMounts:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        subPath:
                                          type: string
                                        readOnly:
                                          type: boolean
                                        mountPath:
                                          type: string
                                        subPathExpr:
                                          type: string
                                        mountPropagation:
                                          type: string
                                  livenessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  restartPolicy:
                                    type: string
                                  volumeDevices:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        devicePath:
                                          type: string
                                  readinessProbe:
                                    type: object
                                    properties:
                                      exec:
                                        type: object
                                        properties:
                                          command:
                                            type: array
                                            items:
                                              type: string
                                      grpc:
                                        type: object
                                        properties:
                                          port:
                                            type: integer
                                            format: int32
                                          service:
                                            type: string
                                      httpGet:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          path:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                          scheme:
                                            type: string
                                          httpHeaders:
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                name:
                                                  type: string
                                                value:
                                                  type: string
                                      tcpSocket:
                                        type: object
                                        properties:
                                          host:
                                            type: string
                                          port:
                                            type: string
                                            format: int-or-string
                                      periodSeconds:
                                        type: integer
                                        format: int32
                                      timeoutSeconds:
                                        type: integer
                                        format: int32
                                      failureThreshold:
                                        type: integer
                                        format: int32
                                      successThreshold:
                                        type: integer
                                        format: int32
                                      initialDelaySeconds:
                                        type: integer
                                        format: int32
                                      terminationGracePeriodSeconds:
                                        type: integer
                                        format: int64
                                  imagePullPolicy:
                                    type: string
                                  securityContext:
                                    type: object
                                    properties:
                                      procMount:
                                        type: string
                                      runAsUser:
                                        type: integer
                                        format: int64
                                      privileged:
                                        type: boolean
                                      runAsGroup:
                                        type: integer
                                        format: int64
                                      capabilities:
                                        type: object
                                        properties:
                                          add:
                                            type: array
                                            items:
                                              type: string
                                          drop:
                                            type: array
                                            items:
                                              type: string
                                      runAsNonRoot:
                                        type: boolean
                                      seLinuxOptions:
                                        type: object
                                        properties:
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                          level:
                                            type: string
                                      seccompProfile:
                                        type: object
                                        properties:
                                          type:
                                            type: string
                                          localhostProfile:
                                            type: string
                                      windowsOptions:
                                        type: object
                                        properties:
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                      readOnlyRootFilesystem:
                                        type: boolean
                                      allowPrivilegeEscalation:
                                        type: boolean
                                  targetContainerName:
                                    type: string
                                  terminationMessagePath:
                                    type: string
                                  terminationMessagePolicy:
                                    type: string
                            activeDeadlineSeconds:
                              type: integer
                              format: int64
                            shareProcessNamespace:
                              type: boolean
                            topologySpreadConstraints:
                              type: array
                              items:
                                type: object
                                properties:
                                  maxSkew:
                                    type: integer
                                    format: int32
                                  minDomains:
                                    type: integer
                                    format: int32
                                  topologyKey:
                                    type: string
                                  labelSelector:
                                    type: object
                                    properties:
                                      matchLabels:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      matchExpressions:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                            operator:
                                              type: string
                                  matchLabelKeys:
                                    type: array
                                    items:
                                      type: string
                                  nodeTaintsPolicy:
                                    type: string
                                  whenUnsatisfiable:
                                    type: string
                                  nodeAffinityPolicy:
                                    type: string
                            automountServiceAccountToken:
                              type: boolean
                            terminationGracePeriodSeconds:
                              type: integer
                              format: int64
                        metadata:
                          type: object
                          properties:
                            uid:
                              type: string
                            name:
                              type: string
                            labels:
                              type: object
                              additionalProperties:
                                type: string
                            selfLink:
                              type: string
                            namespace:
                              type: string
                            finalizers:
                              type: array
                              items:
                                type: string
                            generation:
                              type: integer
                              format: int64
                            annotations:
                              type: object
                              additionalProperties:
                                type: string
                            generateName:
                              type: string
                            managedFields:
                              type: array
                              items:
                                type: object
                                properties:
                                  time:
                                    type: string
                                    format: date-time
                                  manager:
                                    type: string
                                  fieldsV1:
                                    type: object
                                  operation:
                                    type: string
                                  apiVersion:
                                    type: string
                                  fieldsType:
                                    type: string
                                  subresource:
                                    type: string
                            ownerReferences:
                              type: array
                              items:
                                type: object
                                properties:
                                  uid:
                                    type: string
                                  kind:
                                    type: string
                                  name:
                                    type: string
                                  apiVersion:
                                    type: string
                                  controller:
                                    type: boolean
                                  blockOwnerDeletion:
                                    type: boolean
                            resourceVersion:
                              type: string
                            creationTimestamp:
                              type: string
                              format: date-time
                            deletionTimestamp:
                              type: string
                              format: date-time
                            deletionGracePeriodSeconds:
                              type: integer
                              format: int64
                      description: See PodTemplateSpec
                        (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core)
                        for more details
                    configOverrides:
                      type: object
                      default: {}
                      additionalProperties:
                        type: object
                        additionalProperties:
                          type: string
            status:
              type: object
              nullable: true
              properties:
                conditions:
                  type: array
                  items:
                    type: object
                    required:
                      - status
                      - type
                    properties:
                      type:
                        enum:
                          - Available
                          - Degraded
                          - Progressing
                          - ReconciliationPaused
                          - Stopped
                        type: string
                        description: Type of deployment condition.
                      reason:
                        type: string
                        nullable: true
                        description: The reason for the condition's last transition.
                      status:
                        enum:
                          - "True"
                          - "False"
                          - Unknown
                        type: string
                        description: Status of the condition, one of True, False, Unknown.
                      message:
                        type: string
                        nullable: true
                        description: A human readable message indicating details about the transition.
                      lastUpdateTime:
                        type: string
                        format: date-time
                        nullable: true
                        description: The last time this condition was updated.
                      lastTransitionTime:
                        type: string
                        format: date-time
                        nullable: true
                        description: Last time the condition transitioned from one status to another.
                  default: []
          description: Auto-generated derived type for AirflowClusterSpec via
            `CustomResource`
      served: true
      storage: true
      subresources:
        status: {}
      additionalPrinterColumns: []
metadata:
  name: airflowclusters.airflow.stackable.tech
  annotations:
    helm.sh/resource-policy: keep
apiVersion: apiextensions.k8s.io/v1
