apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.5
  creationTimestamp: "2026-04-06T12:15:07Z"
  generation: 1
  labels:
    app.kubernetes.io/component: rabbitmq-operator
    app.kubernetes.io/name: rabbitmq-cluster-operator
    app.kubernetes.io/part-of: rabbitmq
    servicebinding.io/provisioned-service: "true"
  name: rabbitmqclusters.rabbitmq.com
  resourceVersion: "38758"
  uid: 58e3d150-ba5c-4e52-87da-2c48dd9cde62
spec:
  conversion:
    strategy: None
  group: rabbitmq.com
  names:
    categories:
    - all
    - rabbitmq
    kind: RabbitmqCluster
    listKind: RabbitmqClusterList
    plural: rabbitmqclusters
    shortNames:
    - rmq
    singular: rabbitmqcluster
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type == 'AllReplicasReady')].status
      name: AllReplicasReady
      type: string
    - jsonPath: .status.conditions[?(@.type == 'ReconcileSuccess')].status
      name: ReconcileSuccess
      type: string
    - jsonPath: .metadata.creationTimestamp
      name: Age
      type: date
    name: v1beta1
    schema:
      openAPIV3Schema:
        description: |-
          RabbitmqCluster is the Schema for the RabbitmqCluster API. Each instance of this object
          corresponds to a single RabbitMQ cluster.
        properties:
          apiVersion:
            description: |-
              APIVersion defines the versioned schema of this representation of an object.
              Servers should convert recognized schemas to the latest internal value, and
              may reject unrecognized values.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
            type: string
          kind:
            description: |-
              Kind is a string value representing the REST resource this object represents.
              Servers may infer this from the endpoint the client submits requests to.
              Cannot be updated.
              In CamelCase.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
            type: string
          metadata:
            type: object
          spec:
            description: Spec is the desired state of the RabbitmqCluster Custom Resource.
            properties:
              affinity:
                description: Affinity scheduling rules to be applied on created Pods.
                properties:
                  nodeAffinity:
                    description: Describes node affinity scheduling rules for the
                      pod.
                    properties:
                      preferredDuringSchedulingIgnoredDuringExecution:
                        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.
                        items:
                          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).
                          properties:
                            preference:
                              description: A node selector term, associated with the
                                corresponding weight.
                              properties:
                                matchExpressions:
                                  description: A list of node selector requirements
                                    by node's labels.
                                  items:
                                    description: |-
                                      A node selector requirement is a selector that contains values, a key, and an operator
                                      that relates the key and values.
                                    properties:
                                      key:
                                        description: The label key that the selector
                                          applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          Represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchFields:
                                  description: A list of node selector requirements
                                    by node's fields.
                                  items:
                                    description: |-
                                      A node selector requirement is a selector that contains values, a key, and an operator
                                      that relates the key and values.
                                    properties:
                                      key:
                                        description: The label key that the selector
                                          applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          Represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                              type: object
                              x-kubernetes-map-type: atomic
                            weight:
                              description: Weight associated with matching the corresponding
                                nodeSelectorTerm, in the range 1-100.
                              format: int32
                              type: integer
                          required:
                          - preference
                          - weight
                          type: object
                        type: array
                        x-kubernetes-list-type: atomic
                      requiredDuringSchedulingIgnoredDuringExecution:
                        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.
                        properties:
                          nodeSelectorTerms:
                            description: Required. A list of node selector terms.
                              The terms are ORed.
                            items:
                              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.
                              properties:
                                matchExpressions:
                                  description: A list of node selector requirements
                                    by node's labels.
                                  items:
                                    description: |-
                                      A node selector requirement is a selector that contains values, a key, and an operator
                                      that relates the key and values.
                                    properties:
                                      key:
                                        description: The label key that the selector
                                          applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          Represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchFields:
                                  description: A list of node selector requirements
                                    by node's fields.
                                  items:
                                    description: |-
                                      A node selector requirement is a selector that contains values, a key, and an operator
                                      that relates the key and values.
                                    properties:
                                      key:
                                        description: The label key that the selector
                                          applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          Represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                              type: object
                              x-kubernetes-map-type: atomic
                            type: array
                            x-kubernetes-list-type: atomic
                        required:
                        - nodeSelectorTerms
                        type: object
                        x-kubernetes-map-type: atomic
                    type: object
                  podAffinity:
                    description: Describes pod affinity scheduling rules (e.g. co-locate
                      this pod in the same node, zone, etc. as some other pod(s)).
                    properties:
                      preferredDuringSchedulingIgnoredDuringExecution:
                        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.
                        items:
                          description: The weights of all of the matched WeightedPodAffinityTerm
                            fields are added per-node to find the most preferred node(s)
                          properties:
                            podAffinityTerm:
                              description: Required. A pod affinity term, associated
                                with the corresponding weight.
                              properties:
                                labelSelector:
                                  description: |-
                                    A label query over a set of resources, in this case pods.
                                    If it's null, this PodAffinityTerm matches with no Pods.
                                  properties:
                                    matchExpressions:
                                      description: matchExpressions is a list of label
                                        selector requirements. The requirements are
                                        ANDed.
                                      items:
                                        description: |-
                                          A label selector requirement is a selector that contains values, a key, and an operator that
                                          relates the key and values.
                                        properties:
                                          key:
                                            description: key is the label key that
                                              the selector applies to.
                                            type: string
                                          operator:
                                            description: |-
                                              operator represents a key's relationship to a set of values.
                                              Valid operators are In, NotIn, Exists and DoesNotExist.
                                            type: string
                                          values:
                                            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.
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      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.
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                matchLabelKeys:
                                  description: |-
                                    MatchLabelKeys is a set of pod label keys to select which pods will
                                    be taken into consideration. The keys are used to lookup values from the
                                    incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
                                    to select the group of existing pods which pods will be taken into consideration
                                    for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                    pod labels will be ignored. The default value is empty.
                                    The same key is forbidden to exist in both matchLabelKeys and labelSelector.
                                    Also, matchLabelKeys cannot be set when labelSelector isn't set.
                                    This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                mismatchLabelKeys:
                                  description: |-
                                    MismatchLabelKeys is a set of pod label keys to select which pods will
                                    be taken into consideration. The keys are used to lookup values from the
                                    incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
                                    to select the group of existing pods which pods will be taken into consideration
                                    for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                    pod labels will be ignored. The default value is empty.
                                    The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
                                    Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
                                    This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                namespaceSelector:
                                  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.
                                  properties:
                                    matchExpressions:
                                      description: matchExpressions is a list of label
                                        selector requirements. The requirements are
                                        ANDed.
                                      items:
                                        description: |-
                                          A label selector requirement is a selector that contains values, a key, and an operator that
                                          relates the key and values.
                                        properties:
                                          key:
                                            description: key is the label key that
                                              the selector applies to.
                                            type: string
                                          operator:
                                            description: |-
                                              operator represents a key's relationship to a set of values.
                                              Valid operators are In, NotIn, Exists and DoesNotExist.
                                            type: string
                                          values:
                                            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.
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      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.
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                namespaces:
                                  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".
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                topologyKey:
                                  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.
                                  type: string
                              required:
                              - topologyKey
                              type: object
                            weight:
                              description: |-
                                weight associated with matching the corresponding podAffinityTerm,
                                in the range 1-100.
                              format: int32
                              type: integer
                          required:
                          - podAffinityTerm
                          - weight
                          type: object
                        type: array
                        x-kubernetes-list-type: atomic
                      requiredDuringSchedulingIgnoredDuringExecution:
                        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.
                        items:
                          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
                          properties:
                            labelSelector:
                              description: |-
                                A label query over a set of resources, in this case pods.
                                If it's null, this PodAffinityTerm matches with no Pods.
                              properties:
                                matchExpressions:
                                  description: matchExpressions is a list of label
                                    selector requirements. The requirements are ANDed.
                                  items:
                                    description: |-
                                      A label selector requirement is a selector that contains values, a key, and an operator that
                                      relates the key and values.
                                    properties:
                                      key:
                                        description: key is the label key that the
                                          selector applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          operator represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists and DoesNotExist.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchLabels:
                                  additionalProperties:
                                    type: string
                                  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.
                                  type: object
                              type: object
                              x-kubernetes-map-type: atomic
                            matchLabelKeys:
                              description: |-
                                MatchLabelKeys is a set of pod label keys to select which pods will
                                be taken into consideration. The keys are used to lookup values from the
                                incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
                                to select the group of existing pods which pods will be taken into consideration
                                for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                pod labels will be ignored. The default value is empty.
                                The same key is forbidden to exist in both matchLabelKeys and labelSelector.
                                Also, matchLabelKeys cannot be set when labelSelector isn't set.
                                This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                            mismatchLabelKeys:
                              description: |-
                                MismatchLabelKeys is a set of pod label keys to select which pods will
                                be taken into consideration. The keys are used to lookup values from the
                                incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
                                to select the group of existing pods which pods will be taken into consideration
                                for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                pod labels will be ignored. The default value is empty.
                                The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
                                Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
                                This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                            namespaceSelector:
                              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.
                              properties:
                                matchExpressions:
                                  description: matchExpressions is a list of label
                                    selector requirements. The requirements are ANDed.
                                  items:
                                    description: |-
                                      A label selector requirement is a selector that contains values, a key, and an operator that
                                      relates the key and values.
                                    properties:
                                      key:
                                        description: key is the label key that the
                                          selector applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          operator represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists and DoesNotExist.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchLabels:
                                  additionalProperties:
                                    type: string
                                  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.
                                  type: object
                              type: object
                              x-kubernetes-map-type: atomic
                            namespaces:
                              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".
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                            topologyKey:
                              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.
                              type: string
                          required:
                          - topologyKey
                          type: object
                        type: array
                        x-kubernetes-list-type: atomic
                    type: object
                  podAntiAffinity:
                    description: Describes pod anti-affinity scheduling rules (e.g.
                      avoid putting this pod in the same node, zone, etc. as some
                      other pod(s)).
                    properties:
                      preferredDuringSchedulingIgnoredDuringExecution:
                        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.
                        items:
                          description: The weights of all of the matched WeightedPodAffinityTerm
                            fields are added per-node to find the most preferred node(s)
                          properties:
                            podAffinityTerm:
                              description: Required. A pod affinity term, associated
                                with the corresponding weight.
                              properties:
                                labelSelector:
                                  description: |-
                                    A label query over a set of resources, in this case pods.
                                    If it's null, this PodAffinityTerm matches with no Pods.
                                  properties:
                                    matchExpressions:
                                      description: matchExpressions is a list of label
                                        selector requirements. The requirements are
                                        ANDed.
                                      items:
                                        description: |-
                                          A label selector requirement is a selector that contains values, a key, and an operator that
                                          relates the key and values.
                                        properties:
                                          key:
                                            description: key is the label key that
                                              the selector applies to.
                                            type: string
                                          operator:
                                            description: |-
                                              operator represents a key's relationship to a set of values.
                                              Valid operators are In, NotIn, Exists and DoesNotExist.
                                            type: string
                                          values:
                                            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.
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      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.
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                matchLabelKeys:
                                  description: |-
                                    MatchLabelKeys is a set of pod label keys to select which pods will
                                    be taken into consideration. The keys are used to lookup values from the
                                    incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
                                    to select the group of existing pods which pods will be taken into consideration
                                    for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                    pod labels will be ignored. The default value is empty.
                                    The same key is forbidden to exist in both matchLabelKeys and labelSelector.
                                    Also, matchLabelKeys cannot be set when labelSelector isn't set.
                                    This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                mismatchLabelKeys:
                                  description: |-
                                    MismatchLabelKeys is a set of pod label keys to select which pods will
                                    be taken into consideration. The keys are used to lookup values from the
                                    incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
                                    to select the group of existing pods which pods will be taken into consideration
                                    for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                    pod labels will be ignored. The default value is empty.
                                    The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
                                    Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
                                    This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                namespaceSelector:
                                  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.
                                  properties:
                                    matchExpressions:
                                      description: matchExpressions is a list of label
                                        selector requirements. The requirements are
                                        ANDed.
                                      items:
                                        description: |-
                                          A label selector requirement is a selector that contains values, a key, and an operator that
                                          relates the key and values.
                                        properties:
                                          key:
                                            description: key is the label key that
                                              the selector applies to.
                                            type: string
                                          operator:
                                            description: |-
                                              operator represents a key's relationship to a set of values.
                                              Valid operators are In, NotIn, Exists and DoesNotExist.
                                            type: string
                                          values:
                                            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.
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      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.
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                namespaces:
                                  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".
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                topologyKey:
                                  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.
                                  type: string
                              required:
                              - topologyKey
                              type: object
                            weight:
                              description: |-
                                weight associated with matching the corresponding podAffinityTerm,
                                in the range 1-100.
                              format: int32
                              type: integer
                          required:
                          - podAffinityTerm
                          - weight
                          type: object
                        type: array
                        x-kubernetes-list-type: atomic
                      requiredDuringSchedulingIgnoredDuringExecution:
                        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.
                        items:
                          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
                          properties:
                            labelSelector:
                              description: |-
                                A label query over a set of resources, in this case pods.
                                If it's null, this PodAffinityTerm matches with no Pods.
                              properties:
                                matchExpressions:
                                  description: matchExpressions is a list of label
                                    selector requirements. The requirements are ANDed.
                                  items:
                                    description: |-
                                      A label selector requirement is a selector that contains values, a key, and an operator that
                                      relates the key and values.
                                    properties:
                                      key:
                                        description: key is the label key that the
                                          selector applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          operator represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists and DoesNotExist.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchLabels:
                                  additionalProperties:
                                    type: string
                                  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.
                                  type: object
                              type: object
                              x-kubernetes-map-type: atomic
                            matchLabelKeys:
                              description: |-
                                MatchLabelKeys is a set of pod label keys to select which pods will
                                be taken into consideration. The keys are used to lookup values from the
                                incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
                                to select the group of existing pods which pods will be taken into consideration
                                for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                pod labels will be ignored. The default value is empty.
                                The same key is forbidden to exist in both matchLabelKeys and labelSelector.
                                Also, matchLabelKeys cannot be set when labelSelector isn't set.
                                This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                            mismatchLabelKeys:
                              description: |-
                                MismatchLabelKeys is a set of pod label keys to select which pods will
                                be taken into consideration. The keys are used to lookup values from the
                                incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
                                to select the group of existing pods which pods will be taken into consideration
                                for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
                                pod labels will be ignored. The default value is empty.
                                The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
                                Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
                                This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                            namespaceSelector:
                              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.
                              properties:
                                matchExpressions:
                                  description: matchExpressions is a list of label
                                    selector requirements. The requirements are ANDed.
                                  items:
                                    description: |-
                                      A label selector requirement is a selector that contains values, a key, and an operator that
                                      relates the key and values.
                                    properties:
                                      key:
                                        description: key is the label key that the
                                          selector applies to.
                                        type: string
                                      operator:
                                        description: |-
                                          operator represents a key's relationship to a set of values.
                                          Valid operators are In, NotIn, Exists and DoesNotExist.
                                        type: string
                                      values:
                                        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.
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchLabels:
                                  additionalProperties:
                                    type: string
                                  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.
                                  type: object
                              type: object
                              x-kubernetes-map-type: atomic
                            namespaces:
                              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".
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                            topologyKey:
                              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.
                              type: string
                          required:
                          - topologyKey
                          type: object
                        type: array
                        x-kubernetes-list-type: atomic
                    type: object
                type: object
              autoEnableAllFeatureFlags:
                description: |-
                  Set to true to automatically enable all feature flags after each upgrade
                  For more information, see https://www.rabbitmq.com/docs/feature-flags
                type: boolean
              delayStartSeconds:
                default: 30
                description: |-
                  DelayStartSeconds is the time the init container (`setup-container`) will sleep before terminating.
                  This effectively delays the time between starting the Pod and starting the `rabbitmq` container.
                  RabbitMQ relies on up-to-date DNS entries early during peer discovery.
                  The purpose of this artificial delay is to ensure that DNS entries are up-to-date when booting RabbitMQ.
                  For more information, see https://github.com/kubernetes/kubernetes/issues/92559
                  If your Kubernetes DNS backend is configured with a low DNS cache value or publishes not ready addresses
                  promptly, you can decrase this value or set it to 0.
                format: int32
                minimum: 0
                type: integer
              image:
                description: |-
                  Image is the name of the RabbitMQ docker image to use for RabbitMQ nodes in the RabbitmqCluster.
                  Must be provided together with ImagePullSecrets in order to use an image in a private registry.
                type: string
              imagePullSecrets:
                description: List of Secret resource containing access credentials
                  to the registry for the RabbitMQ image. Required if the docker registry
                  is private.
                items:
                  description: |-
                    LocalObjectReference contains enough information to let you locate the
                    referenced object inside the same namespace.
                  properties:
                    name:
                      default: ""
                      description: |-
                        Name of the referent.
                        This field is effectively required, but due to backwards compatibility is
                        allowed to be empty. Instances of this type with an empty value here are
                        almost certainly wrong.
                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                      type: string
                  type: object
                  x-kubernetes-map-type: atomic
                type: array
              override:
                properties:
                  service:
                    properties:
                      metadata:
                        properties:
                          annotations:
                            additionalProperties:
                              type: string
                            type: object
                          labels:
                            additionalProperties:
                              type: string
                            type: object
                        type: object
                      spec:
                        properties:
                          allocateLoadBalancerNodePorts:
                            type: boolean
                          clusterIP:
                            type: string
                          clusterIPs:
                            items:
                              type: string
                            type: array
                            x-kubernetes-list-type: atomic
                          externalIPs:
                            items:
                              type: string
                            type: array
                            x-kubernetes-list-type: atomic
                          externalName:
                            type: string
                          externalTrafficPolicy:
                            type: string
                          healthCheckNodePort:
                            format: int32
                            type: integer
                          internalTrafficPolicy:
                            type: string
                          ipFamilies:
                            items:
                              type: string
                            type: array
                            x-kubernetes-list-type: atomic
                          ipFamilyPolicy:
                            type: string
                          loadBalancerClass:
                            type: string
                          loadBalancerIP:
                            type: string
                          loadBalancerSourceRanges:
                            items:
                              type: string
                            type: array
                            x-kubernetes-list-type: atomic
                          ports:
                            items:
                              properties:
                                appProtocol:
                                  type: string
                                name:
                                  type: string
                                nodePort:
                                  format: int32
                                  type: integer
                                port:
                                  format: int32
                                  type: integer
                                protocol:
                                  default: TCP
                                  type: string
                                targetPort:
                                  anyOf:
                                  - type: integer
                                  - type: string
                                  x-kubernetes-int-or-string: true
                              required:
                              - port
                              type: object
                            type: array
                            x-kubernetes-list-map-keys:
                            - port
                            - protocol
                            x-kubernetes-list-type: map
                          publishNotReadyAddresses:
                            type: boolean
                          selector:
                            additionalProperties:
                              type: string
                            type: object
                            x-kubernetes-map-type: atomic
                          sessionAffinity:
                            type: string
                          sessionAffinityConfig:
                            properties:
                              clientIP:
                                properties:
                                  timeoutSeconds:
                                    format: int32
                                    type: integer
                                type: object
                            type: object
                          trafficDistribution:
                            type: string
                          type:
                            type: string
                        type: object
                    type: object
                  statefulSet:
                    properties:
                      metadata:
                        properties:
                          annotations:
                            additionalProperties:
                              type: string
                            type: object
                          labels:
                            additionalProperties:
                              type: string
                            type: object
                        type: object
                      spec:
                        properties:
                          minReadySeconds:
                            format: int32
                            type: integer
                          persistentVolumeClaimRetentionPolicy:
                            properties:
                              whenDeleted:
                                type: string
                              whenScaled:
                                type: string
                            type: object
                          podManagementPolicy:
                            type: string
                          replicas:
                            format: int32
                            type: integer
                          selector:
                            properties:
                              matchExpressions:
                                items:
                                  properties:
                                    key:
                                      type: string
                                    operator:
                                      type: string
                                    values:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                  required:
                                  - key
                                  - operator
                                  type: object
                                type: array
                                x-kubernetes-list-type: atomic
                              matchLabels:
                                additionalProperties:
                                  type: string
                                type: object
                            type: object
                            x-kubernetes-map-type: atomic
                          serviceName:
                            type: string
                          template:
                            properties:
                              metadata:
                                properties:
                                  annotations:
                                    additionalProperties:
                                      type: string
                                    type: object
                                  labels:
                                    additionalProperties:
                                      type: string
                                    type: object
                                  name:
                                    type: string
                                  namespace:
                                    type: string
                                type: object
                              spec:
                                properties:
                                  activeDeadlineSeconds:
                                    format: int64
                                    type: integer
                                  affinity:
                                    properties:
                                      nodeAffinity:
                                        properties:
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            items:
                                              properties:
                                                preference:
                                                  properties:
                                                    matchExpressions:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    matchFields:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                                weight:
                                                  format: int32
                                                  type: integer
                                              required:
                                              - preference
                                              - weight
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            properties:
                                              nodeSelectorTerms:
                                                items:
                                                  properties:
                                                    matchExpressions:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    matchFields:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                                type: array
                                                x-kubernetes-list-type: atomic
                                            required:
                                            - nodeSelectorTerms
                                            type: object
                                            x-kubernetes-map-type: atomic
                                        type: object
                                      podAffinity:
                                        properties:
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            items:
                                              properties:
                                                podAffinityTerm:
                                                  properties:
                                                    labelSelector:
                                                      properties:
                                                        matchExpressions:
                                                          items:
                                                            properties:
                                                              key:
                                                                type: string
                                                              operator:
                                                                type: string
                                                              values:
                                                                items:
                                                                  type: string
                                                                type: array
                                                                x-kubernetes-list-type: atomic
                                                            required:
                                                            - key
                                                            - operator
                                                            type: object
                                                          type: array
                                                          x-kubernetes-list-type: atomic
                                                        matchLabels:
                                                          additionalProperties:
                                                            type: string
                                                          type: object
                                                      type: object
                                                      x-kubernetes-map-type: atomic
                                                    matchLabelKeys:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    mismatchLabelKeys:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    namespaceSelector:
                                                      properties:
                                                        matchExpressions:
                                                          items:
                                                            properties:
                                                              key:
                                                                type: string
                                                              operator:
                                                                type: string
                                                              values:
                                                                items:
                                                                  type: string
                                                                type: array
                                                                x-kubernetes-list-type: atomic
                                                            required:
                                                            - key
                                                            - operator
                                                            type: object
                                                          type: array
                                                          x-kubernetes-list-type: atomic
                                                        matchLabels:
                                                          additionalProperties:
                                                            type: string
                                                          type: object
                                                      type: object
                                                      x-kubernetes-map-type: atomic
                                                    namespaces:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    topologyKey:
                                                      type: string
                                                  required:
                                                  - topologyKey
                                                  type: object
                                                weight:
                                                  format: int32
                                                  type: integer
                                              required:
                                              - podAffinityTerm
                                              - weight
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            items:
                                              properties:
                                                labelSelector:
                                                  properties:
                                                    matchExpressions:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    matchLabels:
                                                      additionalProperties:
                                                        type: string
                                                      type: object
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                                matchLabelKeys:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                mismatchLabelKeys:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                namespaceSelector:
                                                  properties:
                                                    matchExpressions:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    matchLabels:
                                                      additionalProperties:
                                                        type: string
                                                      type: object
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                                namespaces:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                topologyKey:
                                                  type: string
                                              required:
                                              - topologyKey
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        type: object
                                      podAntiAffinity:
                                        properties:
                                          preferredDuringSchedulingIgnoredDuringExecution:
                                            items:
                                              properties:
                                                podAffinityTerm:
                                                  properties:
                                                    labelSelector:
                                                      properties:
                                                        matchExpressions:
                                                          items:
                                                            properties:
                                                              key:
                                                                type: string
                                                              operator:
                                                                type: string
                                                              values:
                                                                items:
                                                                  type: string
                                                                type: array
                                                                x-kubernetes-list-type: atomic
                                                            required:
                                                            - key
                                                            - operator
                                                            type: object
                                                          type: array
                                                          x-kubernetes-list-type: atomic
                                                        matchLabels:
                                                          additionalProperties:
                                                            type: string
                                                          type: object
                                                      type: object
                                                      x-kubernetes-map-type: atomic
                                                    matchLabelKeys:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    mismatchLabelKeys:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    namespaceSelector:
                                                      properties:
                                                        matchExpressions:
                                                          items:
                                                            properties:
                                                              key:
                                                                type: string
                                                              operator:
                                                                type: string
                                                              values:
                                                                items:
                                                                  type: string
                                                                type: array
                                                                x-kubernetes-list-type: atomic
                                                            required:
                                                            - key
                                                            - operator
                                                            type: object
                                                          type: array
                                                          x-kubernetes-list-type: atomic
                                                        matchLabels:
                                                          additionalProperties:
                                                            type: string
                                                          type: object
                                                      type: object
                                                      x-kubernetes-map-type: atomic
                                                    namespaces:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    topologyKey:
                                                      type: string
                                                  required:
                                                  - topologyKey
                                                  type: object
                                                weight:
                                                  format: int32
                                                  type: integer
                                              required:
                                              - podAffinityTerm
                                              - weight
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                          requiredDuringSchedulingIgnoredDuringExecution:
                                            items:
                                              properties:
                                                labelSelector:
                                                  properties:
                                                    matchExpressions:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    matchLabels:
                                                      additionalProperties:
                                                        type: string
                                                      type: object
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                                matchLabelKeys:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                mismatchLabelKeys:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                namespaceSelector:
                                                  properties:
                                                    matchExpressions:
                                                      items:
                                                        properties:
                                                          key:
                                                            type: string
                                                          operator:
                                                            type: string
                                                          values:
                                                            items:
                                                              type: string
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                        required:
                                                        - key
                                                        - operator
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    matchLabels:
                                                      additionalProperties:
                                                        type: string
                                                      type: object
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                                namespaces:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                topologyKey:
                                                  type: string
                                              required:
                                              - topologyKey
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        type: object
                                    type: object
                                  automountServiceAccountToken:
                                    type: boolean
                                  containers:
                                    items:
                                      properties:
                                        args:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        command:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        env:
                                          items:
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                properties:
                                                  configMapKeyRef:
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    required:
                                                    - key
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  fieldRef:
                                                    properties:
                                                      apiVersion:
                                                        type: string
                                                      fieldPath:
                                                        type: string
                                                    required:
                                                    - fieldPath
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  resourceFieldRef:
                                                    properties:
                                                      containerName:
                                                        type: string
                                                      divisor:
                                                        anyOf:
                                                        - type: integer
                                                        - type: string
                                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                        x-kubernetes-int-or-string: true
                                                      resource:
                                                        type: string
                                                    required:
                                                    - resource
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  secretKeyRef:
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    required:
                                                    - key
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                type: object
                                            required:
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - name
                                          x-kubernetes-list-type: map
                                        envFrom:
                                          items:
                                            properties:
                                              configMapRef:
                                                properties:
                                                  name:
                                                    default: ""
                                                    type: string
                                                  optional:
                                                    type: boolean
                                                type: object
                                                x-kubernetes-map-type: atomic
                                              prefix:
                                                type: string
                                              secretRef:
                                                properties:
                                                  name:
                                                    default: ""
                                                    type: string
                                                  optional:
                                                    type: boolean
                                                type: object
                                                x-kubernetes-map-type: atomic
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        image:
                                          type: string
                                        imagePullPolicy:
                                          type: string
                                        lifecycle:
                                          properties:
                                            postStart:
                                              properties:
                                                exec:
                                                  properties:
                                                    command:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                httpGet:
                                                  properties:
                                                    host:
                                                      type: string
                                                    httpHeaders:
                                                      items:
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                        required:
                                                        - name
                                                        - value
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    path:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                    scheme:
                                                      type: string
                                                  required:
                                                  - port
                                                  type: object
                                                sleep:
                                                  properties:
                                                    seconds:
                                                      format: int64
                                                      type: integer
                                                  required:
                                                  - seconds
                                                  type: object
                                                tcpSocket:
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                  required:
                                                  - port
                                                  type: object
                                              type: object
                                            preStop:
                                              properties:
                                                exec:
                                                  properties:
                                                    command:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                httpGet:
                                                  properties:
                                                    host:
                                                      type: string
                                                    httpHeaders:
                                                      items:
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                        required:
                                                        - name
                                                        - value
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    path:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                    scheme:
                                                      type: string
                                                  required:
                                                  - port
                                                  type: object
                                                sleep:
                                                  properties:
                                                    seconds:
                                                      format: int64
                                                      type: integer
                                                  required:
                                                  - seconds
                                                  type: object
                                                tcpSocket:
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                  required:
                                                  - port
                                                  type: object
                                              type: object
                                          type: object
                                        livenessProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        name:
                                          type: string
                                        ports:
                                          items:
                                            properties:
                                              containerPort:
                                                format: int32
                                                type: integer
                                              hostIP:
                                                type: string
                                              hostPort:
                                                format: int32
                                                type: integer
                                              name:
                                                type: string
                                              protocol:
                                                default: TCP
                                                type: string
                                            required:
                                            - containerPort
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - containerPort
                                          - protocol
                                          x-kubernetes-list-type: map
                                        readinessProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        resizePolicy:
                                          items:
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                            required:
                                            - resourceName
                                            - restartPolicy
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        resources:
                                          properties:
                                            claims:
                                              items:
                                                properties:
                                                  name:
                                                    type: string
                                                  request:
                                                    type: string
                                                required:
                                                - name
                                                type: object
                                              type: array
                                              x-kubernetes-list-map-keys:
                                              - name
                                              x-kubernetes-list-type: map
                                            limits:
                                              additionalProperties:
                                                anyOf:
                                                - type: integer
                                                - type: string
                                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                x-kubernetes-int-or-string: true
                                              type: object
                                            requests:
                                              additionalProperties:
                                                anyOf:
                                                - type: integer
                                                - type: string
                                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                x-kubernetes-int-or-string: true
                                              type: object
                                          type: object
                                        restartPolicy:
                                          type: string
                                        securityContext:
                                          properties:
                                            allowPrivilegeEscalation:
                                              type: boolean
                                            appArmorProfile:
                                              properties:
                                                localhostProfile:
                                                  type: string
                                                type:
                                                  type: string
                                              required:
                                              - type
                                              type: object
                                            capabilities:
                                              properties:
                                                add:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                drop:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            privileged:
                                              type: boolean
                                            procMount:
                                              type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            runAsGroup:
                                              format: int64
                                              type: integer
                                            runAsNonRoot:
                                              type: boolean
                                            runAsUser:
                                              format: int64
                                              type: integer
                                            seLinuxOptions:
                                              properties:
                                                level:
                                                  type: string
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                              type: object
                                            seccompProfile:
                                              properties:
                                                localhostProfile:
                                                  type: string
                                                type:
                                                  type: string
                                              required:
                                              - type
                                              type: object
                                            windowsOptions:
                                              properties:
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                              type: object
                                          type: object
                                        startupProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        stdin:
                                          type: boolean
                                        stdinOnce:
                                          type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                        tty:
                                          type: boolean
                                        volumeDevices:
                                          items:
                                            properties:
                                              devicePath:
                                                type: string
                                              name:
                                                type: string
                                            required:
                                            - devicePath
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - devicePath
                                          x-kubernetes-list-type: map
                                        volumeMounts:
                                          items:
                                            properties:
                                              mountPath:
                                                type: string
                                              mountPropagation:
                                                type: string
                                              name:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              recursiveReadOnly:
                                                type: string
                                              subPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                            required:
                                            - mountPath
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - mountPath
                                          x-kubernetes-list-type: map
                                        workingDir:
                                          type: string
                                      required:
                                      - name
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - name
                                    x-kubernetes-list-type: map
                                  dnsConfig:
                                    properties:
                                      nameservers:
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                      options:
                                        items:
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                          type: object
                                        type: array
                                        x-kubernetes-list-type: atomic
                                      searches:
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    type: object
                                  dnsPolicy:
                                    type: string
                                  enableServiceLinks:
                                    type: boolean
                                  ephemeralContainers:
                                    items:
                                      properties:
                                        args:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        command:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        env:
                                          items:
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                properties:
                                                  configMapKeyRef:
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    required:
                                                    - key
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  fieldRef:
                                                    properties:
                                                      apiVersion:
                                                        type: string
                                                      fieldPath:
                                                        type: string
                                                    required:
                                                    - fieldPath
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  resourceFieldRef:
                                                    properties:
                                                      containerName:
                                                        type: string
                                                      divisor:
                                                        anyOf:
                                                        - type: integer
                                                        - type: string
                                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                        x-kubernetes-int-or-string: true
                                                      resource:
                                                        type: string
                                                    required:
                                                    - resource
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  secretKeyRef:
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    required:
                                                    - key
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                type: object
                                            required:
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - name
                                          x-kubernetes-list-type: map
                                        envFrom:
                                          items:
                                            properties:
                                              configMapRef:
                                                properties:
                                                  name:
                                                    default: ""
                                                    type: string
                                                  optional:
                                                    type: boolean
                                                type: object
                                                x-kubernetes-map-type: atomic
                                              prefix:
                                                type: string
                                              secretRef:
                                                properties:
                                                  name:
                                                    default: ""
                                                    type: string
                                                  optional:
                                                    type: boolean
                                                type: object
                                                x-kubernetes-map-type: atomic
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        image:
                                          type: string
                                        imagePullPolicy:
                                          type: string
                                        lifecycle:
                                          properties:
                                            postStart:
                                              properties:
                                                exec:
                                                  properties:
                                                    command:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                httpGet:
                                                  properties:
                                                    host:
                                                      type: string
                                                    httpHeaders:
                                                      items:
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                        required:
                                                        - name
                                                        - value
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    path:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                    scheme:
                                                      type: string
                                                  required:
                                                  - port
                                                  type: object
                                                sleep:
                                                  properties:
                                                    seconds:
                                                      format: int64
                                                      type: integer
                                                  required:
                                                  - seconds
                                                  type: object
                                                tcpSocket:
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                  required:
                                                  - port
                                                  type: object
                                              type: object
                                            preStop:
                                              properties:
                                                exec:
                                                  properties:
                                                    command:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                httpGet:
                                                  properties:
                                                    host:
                                                      type: string
                                                    httpHeaders:
                                                      items:
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                        required:
                                                        - name
                                                        - value
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    path:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                    scheme:
                                                      type: string
                                                  required:
                                                  - port
                                                  type: object
                                                sleep:
                                                  properties:
                                                    seconds:
                                                      format: int64
                                                      type: integer
                                                  required:
                                                  - seconds
                                                  type: object
                                                tcpSocket:
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                  required:
                                                  - port
                                                  type: object
                                              type: object
                                          type: object
                                        livenessProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        name:
                                          type: string
                                        ports:
                                          items:
                                            properties:
                                              containerPort:
                                                format: int32
                                                type: integer
                                              hostIP:
                                                type: string
                                              hostPort:
                                                format: int32
                                                type: integer
                                              name:
                                                type: string
                                              protocol:
                                                default: TCP
                                                type: string
                                            required:
                                            - containerPort
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - containerPort
                                          - protocol
                                          x-kubernetes-list-type: map
                                        readinessProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        resizePolicy:
                                          items:
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                            required:
                                            - resourceName
                                            - restartPolicy
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        resources:
                                          properties:
                                            claims:
                                              items:
                                                properties:
                                                  name:
                                                    type: string
                                                  request:
                                                    type: string
                                                required:
                                                - name
                                                type: object
                                              type: array
                                              x-kubernetes-list-map-keys:
                                              - name
                                              x-kubernetes-list-type: map
                                            limits:
                                              additionalProperties:
                                                anyOf:
                                                - type: integer
                                                - type: string
                                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                x-kubernetes-int-or-string: true
                                              type: object
                                            requests:
                                              additionalProperties:
                                                anyOf:
                                                - type: integer
                                                - type: string
                                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                x-kubernetes-int-or-string: true
                                              type: object
                                          type: object
                                        restartPolicy:
                                          type: string
                                        securityContext:
                                          properties:
                                            allowPrivilegeEscalation:
                                              type: boolean
                                            appArmorProfile:
                                              properties:
                                                localhostProfile:
                                                  type: string
                                                type:
                                                  type: string
                                              required:
                                              - type
                                              type: object
                                            capabilities:
                                              properties:
                                                add:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                drop:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            privileged:
                                              type: boolean
                                            procMount:
                                              type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            runAsGroup:
                                              format: int64
                                              type: integer
                                            runAsNonRoot:
                                              type: boolean
                                            runAsUser:
                                              format: int64
                                              type: integer
                                            seLinuxOptions:
                                              properties:
                                                level:
                                                  type: string
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                              type: object
                                            seccompProfile:
                                              properties:
                                                localhostProfile:
                                                  type: string
                                                type:
                                                  type: string
                                              required:
                                              - type
                                              type: object
                                            windowsOptions:
                                              properties:
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                              type: object
                                          type: object
                                        startupProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        stdin:
                                          type: boolean
                                        stdinOnce:
                                          type: boolean
                                        targetContainerName:
                                          type: string
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                        tty:
                                          type: boolean
                                        volumeDevices:
                                          items:
                                            properties:
                                              devicePath:
                                                type: string
                                              name:
                                                type: string
                                            required:
                                            - devicePath
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - devicePath
                                          x-kubernetes-list-type: map
                                        volumeMounts:
                                          items:
                                            properties:
                                              mountPath:
                                                type: string
                                              mountPropagation:
                                                type: string
                                              name:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              recursiveReadOnly:
                                                type: string
                                              subPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                            required:
                                            - mountPath
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - mountPath
                                          x-kubernetes-list-type: map
                                        workingDir:
                                          type: string
                                      required:
                                      - name
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - name
                                    x-kubernetes-list-type: map
                                  hostAliases:
                                    items:
                                      properties:
                                        hostnames:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        ip:
                                          type: string
                                      required:
                                      - ip
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - ip
                                    x-kubernetes-list-type: map
                                  hostIPC:
                                    type: boolean
                                  hostNetwork:
                                    type: boolean
                                  hostPID:
                                    type: boolean
                                  hostUsers:
                                    type: boolean
                                  hostname:
                                    type: string
                                  imagePullSecrets:
                                    items:
                                      properties:
                                        name:
                                          default: ""
                                          type: string
                                      type: object
                                      x-kubernetes-map-type: atomic
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - name
                                    x-kubernetes-list-type: map
                                  initContainers:
                                    items:
                                      properties:
                                        args:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        command:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        env:
                                          items:
                                            properties:
                                              name:
                                                type: string
                                              value:
                                                type: string
                                              valueFrom:
                                                properties:
                                                  configMapKeyRef:
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    required:
                                                    - key
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  fieldRef:
                                                    properties:
                                                      apiVersion:
                                                        type: string
                                                      fieldPath:
                                                        type: string
                                                    required:
                                                    - fieldPath
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  resourceFieldRef:
                                                    properties:
                                                      containerName:
                                                        type: string
                                                      divisor:
                                                        anyOf:
                                                        - type: integer
                                                        - type: string
                                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                        x-kubernetes-int-or-string: true
                                                      resource:
                                                        type: string
                                                    required:
                                                    - resource
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  secretKeyRef:
                                                    properties:
                                                      key:
                                                        type: string
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    required:
                                                    - key
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                type: object
                                            required:
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - name
                                          x-kubernetes-list-type: map
                                        envFrom:
                                          items:
                                            properties:
                                              configMapRef:
                                                properties:
                                                  name:
                                                    default: ""
                                                    type: string
                                                  optional:
                                                    type: boolean
                                                type: object
                                                x-kubernetes-map-type: atomic
                                              prefix:
                                                type: string
                                              secretRef:
                                                properties:
                                                  name:
                                                    default: ""
                                                    type: string
                                                  optional:
                                                    type: boolean
                                                type: object
                                                x-kubernetes-map-type: atomic
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        image:
                                          type: string
                                        imagePullPolicy:
                                          type: string
                                        lifecycle:
                                          properties:
                                            postStart:
                                              properties:
                                                exec:
                                                  properties:
                                                    command:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                httpGet:
                                                  properties:
                                                    host:
                                                      type: string
                                                    httpHeaders:
                                                      items:
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                        required:
                                                        - name
                                                        - value
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    path:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                    scheme:
                                                      type: string
                                                  required:
                                                  - port
                                                  type: object
                                                sleep:
                                                  properties:
                                                    seconds:
                                                      format: int64
                                                      type: integer
                                                  required:
                                                  - seconds
                                                  type: object
                                                tcpSocket:
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                  required:
                                                  - port
                                                  type: object
                                              type: object
                                            preStop:
                                              properties:
                                                exec:
                                                  properties:
                                                    command:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  type: object
                                                httpGet:
                                                  properties:
                                                    host:
                                                      type: string
                                                    httpHeaders:
                                                      items:
                                                        properties:
                                                          name:
                                                            type: string
                                                          value:
                                                            type: string
                                                        required:
                                                        - name
                                                        - value
                                                        type: object
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    path:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                    scheme:
                                                      type: string
                                                  required:
                                                  - port
                                                  type: object
                                                sleep:
                                                  properties:
                                                    seconds:
                                                      format: int64
                                                      type: integer
                                                  required:
                                                  - seconds
                                                  type: object
                                                tcpSocket:
                                                  properties:
                                                    host:
                                                      type: string
                                                    port:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      x-kubernetes-int-or-string: true
                                                  required:
                                                  - port
                                                  type: object
                                              type: object
                                          type: object
                                        livenessProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        name:
                                          type: string
                                        ports:
                                          items:
                                            properties:
                                              containerPort:
                                                format: int32
                                                type: integer
                                              hostIP:
                                                type: string
                                              hostPort:
                                                format: int32
                                                type: integer
                                              name:
                                                type: string
                                              protocol:
                                                default: TCP
                                                type: string
                                            required:
                                            - containerPort
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - containerPort
                                          - protocol
                                          x-kubernetes-list-type: map
                                        readinessProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        resizePolicy:
                                          items:
                                            properties:
                                              resourceName:
                                                type: string
                                              restartPolicy:
                                                type: string
                                            required:
                                            - resourceName
                                            - restartPolicy
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        resources:
                                          properties:
                                            claims:
                                              items:
                                                properties:
                                                  name:
                                                    type: string
                                                  request:
                                                    type: string
                                                required:
                                                - name
                                                type: object
                                              type: array
                                              x-kubernetes-list-map-keys:
                                              - name
                                              x-kubernetes-list-type: map
                                            limits:
                                              additionalProperties:
                                                anyOf:
                                                - type: integer
                                                - type: string
                                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                x-kubernetes-int-or-string: true
                                              type: object
                                            requests:
                                              additionalProperties:
                                                anyOf:
                                                - type: integer
                                                - type: string
                                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                x-kubernetes-int-or-string: true
                                              type: object
                                          type: object
                                        restartPolicy:
                                          type: string
                                        securityContext:
                                          properties:
                                            allowPrivilegeEscalation:
                                              type: boolean
                                            appArmorProfile:
                                              properties:
                                                localhostProfile:
                                                  type: string
                                                type:
                                                  type: string
                                              required:
                                              - type
                                              type: object
                                            capabilities:
                                              properties:
                                                add:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                drop:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            privileged:
                                              type: boolean
                                            procMount:
                                              type: string
                                            readOnlyRootFilesystem:
                                              type: boolean
                                            runAsGroup:
                                              format: int64
                                              type: integer
                                            runAsNonRoot:
                                              type: boolean
                                            runAsUser:
                                              format: int64
                                              type: integer
                                            seLinuxOptions:
                                              properties:
                                                level:
                                                  type: string
                                                role:
                                                  type: string
                                                type:
                                                  type: string
                                                user:
                                                  type: string
                                              type: object
                                            seccompProfile:
                                              properties:
                                                localhostProfile:
                                                  type: string
                                                type:
                                                  type: string
                                              required:
                                              - type
                                              type: object
                                            windowsOptions:
                                              properties:
                                                gmsaCredentialSpec:
                                                  type: string
                                                gmsaCredentialSpecName:
                                                  type: string
                                                hostProcess:
                                                  type: boolean
                                                runAsUserName:
                                                  type: string
                                              type: object
                                          type: object
                                        startupProbe:
                                          properties:
                                            exec:
                                              properties:
                                                command:
                                                  items:
                                                    type: string
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                              type: object
                                            failureThreshold:
                                              format: int32
                                              type: integer
                                            grpc:
                                              properties:
                                                port:
                                                  format: int32
                                                  type: integer
                                                service:
                                                  default: ""
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            httpGet:
                                              properties:
                                                host:
                                                  type: string
                                                httpHeaders:
                                                  items:
                                                    properties:
                                                      name:
                                                        type: string
                                                      value:
                                                        type: string
                                                    required:
                                                    - name
                                                    - value
                                                    type: object
                                                  type: array
                                                  x-kubernetes-list-type: atomic
                                                path:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                                scheme:
                                                  type: string
                                              required:
                                              - port
                                              type: object
                                            initialDelaySeconds:
                                              format: int32
                                              type: integer
                                            periodSeconds:
                                              format: int32
                                              type: integer
                                            successThreshold:
                                              format: int32
                                              type: integer
                                            tcpSocket:
                                              properties:
                                                host:
                                                  type: string
                                                port:
                                                  anyOf:
                                                  - type: integer
                                                  - type: string
                                                  x-kubernetes-int-or-string: true
                                              required:
                                              - port
                                              type: object
                                            terminationGracePeriodSeconds:
                                              format: int64
                                              type: integer
                                            timeoutSeconds:
                                              format: int32
                                              type: integer
                                          type: object
                                        stdin:
                                          type: boolean
                                        stdinOnce:
                                          type: boolean
                                        terminationMessagePath:
                                          type: string
                                        terminationMessagePolicy:
                                          type: string
                                        tty:
                                          type: boolean
                                        volumeDevices:
                                          items:
                                            properties:
                                              devicePath:
                                                type: string
                                              name:
                                                type: string
                                            required:
                                            - devicePath
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - devicePath
                                          x-kubernetes-list-type: map
                                        volumeMounts:
                                          items:
                                            properties:
                                              mountPath:
                                                type: string
                                              mountPropagation:
                                                type: string
                                              name:
                                                type: string
                                              readOnly:
                                                type: boolean
                                              recursiveReadOnly:
                                                type: string
                                              subPath:
                                                type: string
                                              subPathExpr:
                                                type: string
                                            required:
                                            - mountPath
                                            - name
                                            type: object
                                          type: array
                                          x-kubernetes-list-map-keys:
                                          - mountPath
                                          x-kubernetes-list-type: map
                                        workingDir:
                                          type: string
                                      required:
                                      - name
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - name
                                    x-kubernetes-list-type: map
                                  nodeName:
                                    type: string
                                  nodeSelector:
                                    additionalProperties:
                                      type: string
                                    type: object
                                    x-kubernetes-map-type: atomic
                                  os:
                                    properties:
                                      name:
                                        type: string
                                    required:
                                    - name
                                    type: object
                                  overhead:
                                    additionalProperties:
                                      anyOf:
                                      - type: integer
                                      - type: string
                                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                      x-kubernetes-int-or-string: true
                                    type: object
                                  preemptionPolicy:
                                    type: string
                                  priority:
                                    format: int32
                                    type: integer
                                  priorityClassName:
                                    type: string
                                  readinessGates:
                                    items:
                                      properties:
                                        conditionType:
                                          type: string
                                      required:
                                      - conditionType
                                      type: object
                                    type: array
                                    x-kubernetes-list-type: atomic
                                  resourceClaims:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        resourceClaimName:
                                          type: string
                                        resourceClaimTemplateName:
                                          type: string
                                      required:
                                      - name
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - name
                                    x-kubernetes-list-type: map
                                  restartPolicy:
                                    type: string
                                  runtimeClassName:
                                    type: string
                                  schedulerName:
                                    type: string
                                  schedulingGates:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                      required:
                                      - name
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - name
                                    x-kubernetes-list-type: map
                                  securityContext:
                                    properties:
                                      appArmorProfile:
                                        properties:
                                          localhostProfile:
                                            type: string
                                          type:
                                            type: string
                                        required:
                                        - type
                                        type: object
                                      fsGroup:
                                        format: int64
                                        type: integer
                                      fsGroupChangePolicy:
                                        type: string
                                      runAsGroup:
                                        format: int64
                                        type: integer
                                      runAsNonRoot:
                                        type: boolean
                                      runAsUser:
                                        format: int64
                                        type: integer
                                      seLinuxOptions:
                                        properties:
                                          level:
                                            type: string
                                          role:
                                            type: string
                                          type:
                                            type: string
                                          user:
                                            type: string
                                        type: object
                                      seccompProfile:
                                        properties:
                                          localhostProfile:
                                            type: string
                                          type:
                                            type: string
                                        required:
                                        - type
                                        type: object
                                      supplementalGroups:
                                        items:
                                          format: int64
                                          type: integer
                                        type: array
                                        x-kubernetes-list-type: atomic
                                      supplementalGroupsPolicy:
                                        type: string
                                      sysctls:
                                        items:
                                          properties:
                                            name:
                                              type: string
                                            value:
                                              type: string
                                          required:
                                          - name
                                          - value
                                          type: object
                                        type: array
                                        x-kubernetes-list-type: atomic
                                      windowsOptions:
                                        properties:
                                          gmsaCredentialSpec:
                                            type: string
                                          gmsaCredentialSpecName:
                                            type: string
                                          hostProcess:
                                            type: boolean
                                          runAsUserName:
                                            type: string
                                        type: object
                                    type: object
                                  serviceAccount:
                                    type: string
                                  serviceAccountName:
                                    type: string
                                  setHostnameAsFQDN:
                                    type: boolean
                                  shareProcessNamespace:
                                    type: boolean
                                  subdomain:
                                    type: string
                                  terminationGracePeriodSeconds:
                                    format: int64
                                    type: integer
                                  tolerations:
                                    items:
                                      properties:
                                        effect:
                                          type: string
                                        key:
                                          type: string
                                        operator:
                                          type: string
                                        tolerationSeconds:
                                          format: int64
                                          type: integer
                                        value:
                                          type: string
                                      type: object
                                    type: array
                                    x-kubernetes-list-type: atomic
                                  topologySpreadConstraints:
                                    items:
                                      properties:
                                        labelSelector:
                                          properties:
                                            matchExpressions:
                                              items:
                                                properties:
                                                  key:
                                                    type: string
                                                  operator:
                                                    type: string
                                                  values:
                                                    items:
                                                      type: string
                                                    type: array
                                                    x-kubernetes-list-type: atomic
                                                required:
                                                - key
                                                - operator
                                                type: object
                                              type: array
                                              x-kubernetes-list-type: atomic
                                            matchLabels:
                                              additionalProperties:
                                                type: string
                                              type: object
                                          type: object
                                          x-kubernetes-map-type: atomic
                                        matchLabelKeys:
                                          items:
                                            type: string
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        maxSkew:
                                          format: int32
                                          type: integer
                                        minDomains:
                                          format: int32
                                          type: integer
                                        nodeAffinityPolicy:
                                          type: string
                                        nodeTaintsPolicy:
                                          type: string
                                        topologyKey:
                                          type: string
                                        whenUnsatisfiable:
                                          type: string
                                      required:
                                      - maxSkew
                                      - topologyKey
                                      - whenUnsatisfiable
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - topologyKey
                                    - whenUnsatisfiable
                                    x-kubernetes-list-type: map
                                  volumes:
                                    items:
                                      properties:
                                        awsElasticBlockStore:
                                          properties:
                                            fsType:
                                              type: string
                                            partition:
                                              format: int32
                                              type: integer
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                          required:
                                          - volumeID
                                          type: object
                                        azureDisk:
                                          properties:
                                            cachingMode:
                                              type: string
                                            diskName:
                                              type: string
                                            diskURI:
                                              type: string
                                            fsType:
                                              default: ext4
                                              type: string
                                            kind:
                                              type: string
                                            readOnly:
                                              default: false
                                              type: boolean
                                          required:
                                          - diskName
                                          - diskURI
                                          type: object
                                        azureFile:
                                          properties:
                                            readOnly:
                                              type: boolean
                                            secretName:
                                              type: string
                                            shareName:
                                              type: string
                                          required:
                                          - secretName
                                          - shareName
                                          type: object
                                        cephfs:
                                          properties:
                                            monitors:
                                              items:
                                                type: string
                                              type: array
                                              x-kubernetes-list-type: atomic
                                            path:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretFile:
                                              type: string
                                            secretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                            user:
                                              type: string
                                          required:
                                          - monitors
                                          type: object
                                        cinder:
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                            volumeID:
                                              type: string
                                          required:
                                          - volumeID
                                          type: object
                                        configMap:
                                          properties:
                                            defaultMode:
                                              format: int32
                                              type: integer
                                            items:
                                              items:
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    format: int32
                                                    type: integer
                                                  path:
                                                    type: string
                                                required:
                                                - key
                                                - path
                                                type: object
                                              type: array
                                              x-kubernetes-list-type: atomic
                                            name:
                                              default: ""
                                              type: string
                                            optional:
                                              type: boolean
                                          type: object
                                          x-kubernetes-map-type: atomic
                                        csi:
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            nodePublishSecretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                            readOnly:
                                              type: boolean
                                            volumeAttributes:
                                              additionalProperties:
                                                type: string
                                              type: object
                                          required:
                                          - driver
                                          type: object
                                        downwardAPI:
                                          properties:
                                            defaultMode:
                                              format: int32
                                              type: integer
                                            items:
                                              items:
                                                properties:
                                                  fieldRef:
                                                    properties:
                                                      apiVersion:
                                                        type: string
                                                      fieldPath:
                                                        type: string
                                                    required:
                                                    - fieldPath
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  mode:
                                                    format: int32
                                                    type: integer
                                                  path:
                                                    type: string
                                                  resourceFieldRef:
                                                    properties:
                                                      containerName:
                                                        type: string
                                                      divisor:
                                                        anyOf:
                                                        - type: integer
                                                        - type: string
                                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                        x-kubernetes-int-or-string: true
                                                      resource:
                                                        type: string
                                                    required:
                                                    - resource
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                required:
                                                - path
                                                type: object
                                              type: array
                                              x-kubernetes-list-type: atomic
                                          type: object
                                        emptyDir:
                                          properties:
                                            medium:
                                              type: string
                                            sizeLimit:
                                              anyOf:
                                              - type: integer
                                              - type: string
                                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                              x-kubernetes-int-or-string: true
                                          type: object
                                        ephemeral:
                                          properties:
                                            volumeClaimTemplate:
                                              properties:
                                                metadata:
                                                  type: object
                                                spec:
                                                  properties:
                                                    accessModes:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                    dataSource:
                                                      properties:
                                                        apiGroup:
                                                          type: string
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                      required:
                                                      - kind
                                                      - name
                                                      type: object
                                                      x-kubernetes-map-type: atomic
                                                    dataSourceRef:
                                                      properties:
                                                        apiGroup:
                                                          type: string
                                                        kind:
                                                          type: string
                                                        name:
                                                          type: string
                                                        namespace:
                                                          type: string
                                                      required:
                                                      - kind
                                                      - name
                                                      type: object
                                                    resources:
                                                      properties:
                                                        limits:
                                                          additionalProperties:
                                                            anyOf:
                                                            - type: integer
                                                            - type: string
                                                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                            x-kubernetes-int-or-string: true
                                                          type: object
                                                        requests:
                                                          additionalProperties:
                                                            anyOf:
                                                            - type: integer
                                                            - type: string
                                                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                            x-kubernetes-int-or-string: true
                                                          type: object
                                                      type: object
                                                    selector:
                                                      properties:
                                                        matchExpressions:
                                                          items:
                                                            properties:
                                                              key:
                                                                type: string
                                                              operator:
                                                                type: string
                                                              values:
                                                                items:
                                                                  type: string
                                                                type: array
                                                                x-kubernetes-list-type: atomic
                                                            required:
                                                            - key
                                                            - operator
                                                            type: object
                                                          type: array
                                                          x-kubernetes-list-type: atomic
                                                        matchLabels:
                                                          additionalProperties:
                                                            type: string
                                                          type: object
                                                      type: object
                                                      x-kubernetes-map-type: atomic
                                                    storageClassName:
                                                      type: string
                                                    volumeAttributesClassName:
                                                      type: string
                                                    volumeMode:
                                                      type: string
                                                    volumeName:
                                                      type: string
                                                  type: object
                                              required:
                                              - spec
                                              type: object
                                          type: object
                                        fc:
                                          properties:
                                            fsType:
                                              type: string
                                            lun:
                                              format: int32
                                              type: integer
                                            readOnly:
                                              type: boolean
                                            targetWWNs:
                                              items:
                                                type: string
                                              type: array
                                              x-kubernetes-list-type: atomic
                                            wwids:
                                              items:
                                                type: string
                                              type: array
                                              x-kubernetes-list-type: atomic
                                          type: object
                                        flexVolume:
                                          properties:
                                            driver:
                                              type: string
                                            fsType:
                                              type: string
                                            options:
                                              additionalProperties:
                                                type: string
                                              type: object
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                          required:
                                          - driver
                                          type: object
                                        flocker:
                                          properties:
                                            datasetName:
                                              type: string
                                            datasetUUID:
                                              type: string
                                          type: object
                                        gcePersistentDisk:
                                          properties:
                                            fsType:
                                              type: string
                                            partition:
                                              format: int32
                                              type: integer
                                            pdName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                          required:
                                          - pdName
                                          type: object
                                        gitRepo:
                                          properties:
                                            directory:
                                              type: string
                                            repository:
                                              type: string
                                            revision:
                                              type: string
                                          required:
                                          - repository
                                          type: object
                                        glusterfs:
                                          properties:
                                            endpoints:
                                              type: string
                                            path:
                                              type: string
                                            readOnly:
                                              type: boolean
                                          required:
                                          - endpoints
                                          - path
                                          type: object
                                        hostPath:
                                          properties:
                                            path:
                                              type: string
                                            type:
                                              type: string
                                          required:
                                          - path
                                          type: object
                                        image:
                                          properties:
                                            pullPolicy:
                                              type: string
                                            reference:
                                              type: string
                                          type: object
                                        iscsi:
                                          properties:
                                            chapAuthDiscovery:
                                              type: boolean
                                            chapAuthSession:
                                              type: boolean
                                            fsType:
                                              type: string
                                            initiatorName:
                                              type: string
                                            iqn:
                                              type: string
                                            iscsiInterface:
                                              default: default
                                              type: string
                                            lun:
                                              format: int32
                                              type: integer
                                            portals:
                                              items:
                                                type: string
                                              type: array
                                              x-kubernetes-list-type: atomic
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                            targetPortal:
                                              type: string
                                          required:
                                          - iqn
                                          - lun
                                          - targetPortal
                                          type: object
                                        name:
                                          type: string
                                        nfs:
                                          properties:
                                            path:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            server:
                                              type: string
                                          required:
                                          - path
                                          - server
                                          type: object
                                        persistentVolumeClaim:
                                          properties:
                                            claimName:
                                              type: string
                                            readOnly:
                                              type: boolean
                                          required:
                                          - claimName
                                          type: object
                                        photonPersistentDisk:
                                          properties:
                                            fsType:
                                              type: string
                                            pdID:
                                              type: string
                                          required:
                                          - pdID
                                          type: object
                                        portworxVolume:
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            volumeID:
                                              type: string
                                          required:
                                          - volumeID
                                          type: object
                                        projected:
                                          properties:
                                            defaultMode:
                                              format: int32
                                              type: integer
                                            sources:
                                              items:
                                                properties:
                                                  clusterTrustBundle:
                                                    properties:
                                                      labelSelector:
                                                        properties:
                                                          matchExpressions:
                                                            items:
                                                              properties:
                                                                key:
                                                                  type: string
                                                                operator:
                                                                  type: string
                                                                values:
                                                                  items:
                                                                    type: string
                                                                  type: array
                                                                  x-kubernetes-list-type: atomic
                                                              required:
                                                              - key
                                                              - operator
                                                              type: object
                                                            type: array
                                                            x-kubernetes-list-type: atomic
                                                          matchLabels:
                                                            additionalProperties:
                                                              type: string
                                                            type: object
                                                        type: object
                                                        x-kubernetes-map-type: atomic
                                                      name:
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                      path:
                                                        type: string
                                                      signerName:
                                                        type: string
                                                    required:
                                                    - path
                                                    type: object
                                                  configMap:
                                                    properties:
                                                      items:
                                                        items:
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              format: int32
                                                              type: integer
                                                            path:
                                                              type: string
                                                          required:
                                                          - key
                                                          - path
                                                          type: object
                                                        type: array
                                                        x-kubernetes-list-type: atomic
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  downwardAPI:
                                                    properties:
                                                      items:
                                                        items:
                                                          properties:
                                                            fieldRef:
                                                              properties:
                                                                apiVersion:
                                                                  type: string
                                                                fieldPath:
                                                                  type: string
                                                              required:
                                                              - fieldPath
                                                              type: object
                                                              x-kubernetes-map-type: atomic
                                                            mode:
                                                              format: int32
                                                              type: integer
                                                            path:
                                                              type: string
                                                            resourceFieldRef:
                                                              properties:
                                                                containerName:
                                                                  type: string
                                                                divisor:
                                                                  anyOf:
                                                                  - type: integer
                                                                  - type: string
                                                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                                  x-kubernetes-int-or-string: true
                                                                resource:
                                                                  type: string
                                                              required:
                                                              - resource
                                                              type: object
                                                              x-kubernetes-map-type: atomic
                                                          required:
                                                          - path
                                                          type: object
                                                        type: array
                                                        x-kubernetes-list-type: atomic
                                                    type: object
                                                  secret:
                                                    properties:
                                                      items:
                                                        items:
                                                          properties:
                                                            key:
                                                              type: string
                                                            mode:
                                                              format: int32
                                                              type: integer
                                                            path:
                                                              type: string
                                                          required:
                                                          - key
                                                          - path
                                                          type: object
                                                        type: array
                                                        x-kubernetes-list-type: atomic
                                                      name:
                                                        default: ""
                                                        type: string
                                                      optional:
                                                        type: boolean
                                                    type: object
                                                    x-kubernetes-map-type: atomic
                                                  serviceAccountToken:
                                                    properties:
                                                      audience:
                                                        type: string
                                                      expirationSeconds:
                                                        format: int64
                                                        type: integer
                                                      path:
                                                        type: string
                                                    required:
                                                    - path
                                                    type: object
                                                type: object
                                              type: array
                                              x-kubernetes-list-type: atomic
                                          type: object
                                        quobyte:
                                          properties:
                                            group:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            registry:
                                              type: string
                                            tenant:
                                              type: string
                                            user:
                                              type: string
                                            volume:
                                              type: string
                                          required:
                                          - registry
                                          - volume
                                          type: object
                                        rbd:
                                          properties:
                                            fsType:
                                              type: string
                                            image:
                                              type: string
                                            keyring:
                                              default: /etc/ceph/keyring
                                              type: string
                                            monitors:
                                              items:
                                                type: string
                                              type: array
                                              x-kubernetes-list-type: atomic
                                            pool:
                                              default: rbd
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                            user:
                                              default: admin
                                              type: string
                                          required:
                                          - image
                                          - monitors
                                          type: object
                                        scaleIO:
                                          properties:
                                            fsType:
                                              default: xfs
                                              type: string
                                            gateway:
                                              type: string
                                            protectionDomain:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                            sslEnabled:
                                              type: boolean
                                            storageMode:
                                              default: ThinProvisioned
                                              type: string
                                            storagePool:
                                              type: string
                                            system:
                                              type: string
                                            volumeName:
                                              type: string
                                          required:
                                          - gateway
                                          - secretRef
                                          - system
                                          type: object
                                        secret:
                                          properties:
                                            defaultMode:
                                              format: int32
                                              type: integer
                                            items:
                                              items:
                                                properties:
                                                  key:
                                                    type: string
                                                  mode:
                                                    format: int32
                                                    type: integer
                                                  path:
                                                    type: string
                                                required:
                                                - key
                                                - path
                                                type: object
                                              type: array
                                              x-kubernetes-list-type: atomic
                                            optional:
                                              type: boolean
                                            secretName:
                                              type: string
                                          type: object
                                        storageos:
                                          properties:
                                            fsType:
                                              type: string
                                            readOnly:
                                              type: boolean
                                            secretRef:
                                              properties:
                                                name:
                                                  default: ""
                                                  type: string
                                              type: object
                                              x-kubernetes-map-type: atomic
                                            volumeName:
                                              type: string
                                            volumeNamespace:
                                              type: string
                                          type: object
                                        vsphereVolume:
                                          properties:
                                            fsType:
                                              type: string
                                            storagePolicyID:
                                              type: string
                                            storagePolicyName:
                                              type: string
                                            volumePath:
                                              type: string
                                          required:
                                          - volumePath
                                          type: object
                                      required:
                                      - name
                                      type: object
                                    type: array
                                    x-kubernetes-list-map-keys:
                                    - name
                                    x-kubernetes-list-type: map
                                required:
                                - containers
                                type: object
                            type: object
                          updateStrategy:
                            properties:
                              rollingUpdate:
                                properties:
                                  maxUnavailable:
                                    anyOf:
                                    - type: integer
                                    - type: string
                                    x-kubernetes-int-or-string: true
                                  partition:
                                    format: int32
                                    type: integer
                                type: object
                              type:
                                type: string
                            type: object
                          volumeClaimTemplates:
                            items:
                              properties:
                                apiVersion:
                                  type: string
                                kind:
                                  type: string
                                metadata:
                                  properties:
                                    annotations:
                                      additionalProperties:
                                        type: string
                                      type: object
                                    labels:
                                      additionalProperties:
                                        type: string
                                      type: object
                                    name:
                                      type: string
                                    namespace:
                                      type: string
                                  type: object
                                spec:
                                  properties:
                                    accessModes:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    dataSource:
                                      properties:
                                        apiGroup:
                                          type: string
                                        kind:
                                          type: string
                                        name:
                                          type: string
                                      required:
                                      - kind
                                      - name
                                      type: object
                                      x-kubernetes-map-type: atomic
                                    dataSourceRef:
                                      properties:
                                        apiGroup:
                                          type: string
                                        kind:
                                          type: string
                                        name:
                                          type: string
                                        namespace:
                                          type: string
                                      required:
                                      - kind
                                      - name
                                      type: object
                                    resources:
                                      properties:
                                        limits:
                                          additionalProperties:
                                            anyOf:
                                            - type: integer
                                            - type: string
                                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                            x-kubernetes-int-or-string: true
                                          type: object
                                        requests:
                                          additionalProperties:
                                            anyOf:
                                            - type: integer
                                            - type: string
                                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                            x-kubernetes-int-or-string: true
                                          type: object
                                      type: object
                                    selector:
                                      properties:
                                        matchExpressions:
                                          items:
                                            properties:
                                              key:
                                                type: string
                                              operator:
                                                type: string
                                              values:
                                                items:
                                                  type: string
                                                type: array
                                                x-kubernetes-list-type: atomic
                                            required:
                                            - key
                                            - operator
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        matchLabels:
                                          additionalProperties:
                                            type: string
                                          type: object
                                      type: object
                                      x-kubernetes-map-type: atomic
                                    storageClassName:
                                      type: string
                                    volumeAttributesClassName:
                                      type: string
                                    volumeMode:
                                      type: string
                                    volumeName:
                                      type: string
                                  type: object
                              type: object
                            type: array
                        type: object
                    type: object
                type: object
              persistence:
                default:
                  storage: 10Gi
                description: The desired persistent storage configuration for each
                  Pod in the cluster.
                properties:
                  storage:
                    anyOf:
                    - type: integer
                    - type: string
                    default: 10Gi
                    description: |-
                      The requested size of the persistent volume attached to each Pod in the RabbitmqCluster.
                      The format of this field matches that defined by kubernetes/apimachinery.
                      See https://pkg.go.dev/k8s.io/apimachinery/pkg/api/resource#Quantity for more info on the format of this field.
                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                    x-kubernetes-int-or-string: true
                  storageClassName:
                    description: The name of the StorageClass to claim a PersistentVolume
                      from.
                    type: string
                type: object
              rabbitmq:
                description: Configuration options for RabbitMQ Pods created in the
                  cluster.
                properties:
                  additionalConfig:
                    description: |-
                      Modify to add to the rabbitmq.conf file in addition to default configurations set by the operator.
                      Modifying this property on an existing RabbitmqCluster will trigger a StatefulSet rolling restart and will cause rabbitmq downtime.
                      For more information on this config, see https://www.rabbitmq.com/configure.html#config-file
                    maxLength: 100000
                    type: string
                  additionalPlugins:
                    description: 'List of plugins to enable in addition to essential
                      plugins: rabbitmq_management, rabbitmq_prometheus, and rabbitmq_peer_discovery_k8s.'
                    items:
                      description: A Plugin to enable on the RabbitmqCluster.
                      maxLength: 100
                      pattern: ^\w+$
                      type: string
                    maxItems: 100
                    type: array
                  advancedConfig:
                    description: |-
                      Specify any rabbitmq advanced.config configurations to apply to the cluster.
                      For more information on advanced config, see https://www.rabbitmq.com/configure.html#advanced-config-file
                    maxLength: 100000
                    type: string
                  envConfig:
                    description: |-
                      Modify to add to the rabbitmq-env.conf file. Modifying this property on an existing RabbitmqCluster will trigger a StatefulSet rolling restart and will cause rabbitmq downtime.
                      For more information on env config, see https://www.rabbitmq.com/man/rabbitmq-env.conf.5.html
                    maxLength: 100000
                    type: string
                  erlangInetConfig:
                    description: |-
                      Erlang Inet configuration to apply to the Erlang VM running rabbit.
                      See also: https://www.erlang.org/doc/apps/erts/inet_cfg.html
                    maxLength: 2000
                    type: string
                type: object
              replicas:
                default: 1
                description: |-
                  Replicas is the number of nodes in the RabbitMQ cluster. Each node is deployed as a Replica in a StatefulSet. Only 1, 3, 5 replicas clusters are tested.
                  This value should be an odd number to ensure the resultant cluster can establish exactly one quorum of nodes
                  in the event of a fragmenting network partition.
                format: int32
                minimum: 0
                type: integer
              resources:
                default:
                  limits:
                    cpu: 2000m
                    memory: 2Gi
                  requests:
                    cpu: 1000m
                    memory: 2Gi
                description: The desired compute resource requirements of Pods in
                  the cluster.
                properties:
                  claims:
                    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.
                    items:
                      description: ResourceClaim references one entry in PodSpec.ResourceClaims.
                      properties:
                        name:
                          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.
                          type: string
                        request:
                          description: |-
                            Request is the name chosen for a request in the referenced claim.
                            If empty, everything from the claim is made available, otherwise
                            only the result of this request.
                          type: string
                      required:
                      - name
                      type: object
                    type: array
                    x-kubernetes-list-map-keys:
                    - name
                    x-kubernetes-list-type: map
                  limits:
                    additionalProperties:
                      anyOf:
                      - type: integer
                      - type: string
                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                      x-kubernetes-int-or-string: true
                    description: |-
                      Limits describes the maximum amount of compute resources allowed.
                      More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
                    type: object
                  requests:
                    additionalProperties:
                      anyOf:
                      - type: integer
                      - type: string
                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                      x-kubernetes-int-or-string: true
                    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/concepts/configuration/manage-resources-containers/
                    type: object
                type: object
              secretBackend:
                description: |-
                  Secret backend configuration for the RabbitmqCluster.
                  Enables to fetch default user credentials and certificates from K8s external secret stores.
                properties:
                  externalSecret:
                    description: |-
                      LocalObjectReference contains enough information to let you locate the
                      referenced object inside the same namespace.
                    properties:
                      name:
                        default: ""
                        description: |-
                          Name of the referent.
                          This field is effectively required, but due to backwards compatibility is
                          allowed to be empty. Instances of this type with an empty value here are
                          almost certainly wrong.
                          More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                        type: string
                    type: object
                    x-kubernetes-map-type: atomic
                  vault:
                    description: |-
                      VaultSpec will add Vault annotations (see https://www.vaultproject.io/docs/platform/k8s/injector/annotations)
                      to RabbitMQ Pods. It requires a Vault Agent Sidecar Injector (https://www.vaultproject.io/docs/platform/k8s/injector)
                      to be installed in the K8s cluster. The injector is a K8s Mutation Webhook Controller that alters RabbitMQ Pod specifications
                      (based on the added Vault annotations) to include Vault Agent containers that render Vault secrets to the volume.
                    properties:
                      annotations:
                        additionalProperties:
                          type: string
                        description: |-
                          Vault annotations that override the Vault annotations set by the cluster-operator.
                          For a list of valid Vault annotations, see https://www.vaultproject.io/docs/platform/k8s/injector/annotations
                        type: object
                      defaultUserPath:
                        description: |-
                          Path in Vault to access a KV (Key-Value) secret with the fields username and password for the default user.
                          For example "secret/data/rabbitmq/config".
                        type: string
                      defaultUserUpdaterImage:
                        description: |-
                          Sidecar container that updates the default user's password in RabbitMQ when it changes in Vault.
                          Additionally, it updates /var/lib/rabbitmq/.rabbitmqadmin.conf (used by rabbitmqadmin CLI).
                          Set to empty string to disable the sidecar container.
                        type: string
                      role:
                        description: |-
                          Role in Vault.
                          If vault.defaultUserPath is set, this role must have capability to read the pre-created default user credential in Vault.
                          If vault.tls is set, this role must have capability to create and update certificates in the Vault PKI engine for the domains
                          "<namespace>" and "<namespace>.svc".
                        type: string
                      tls:
                        properties:
                          altNames:
                            description: |-
                              Specifies the requested Subject Alternative Names (SANs), in a comma-delimited list.
                              These will be appended to the SANs added by the cluster-operator.
                              The cluster-operator will add SANs:
                              "<RabbitmqCluster name>-server-<index>.<RabbitmqCluster name>-nodes.<namespace>" for each pod,
                              e.g. "myrabbit-server-0.myrabbit-nodes.default".
                            type: string
                          commonName:
                            description: |-
                              Specifies the requested certificate Common Name (CN).
                              Defaults to <serviceName>.<namespace>.svc if not provided.
                            type: string
                          ipSans:
                            description: Specifies the requested IP Subject Alternative
                              Names, in a comma-delimited list.
                            type: string
                          pkiIssuerPath:
                            description: |-
                              Path in Vault PKI engine.
                              For example "pki/issue/hashicorp-com".
                              required
                            type: string
                          pkiRootPath:
                            description: Specifies an optional path to retrieve the
                              root CA from vault.  Useful if certificates are issued
                              by an intermediate CA
                            type: string
                        type: object
                    type: object
                type: object
              service:
                default:
                  type: ClusterIP
                description: The desired state of the Kubernetes Service to create
                  for the cluster.
                properties:
                  annotations:
                    additionalProperties:
                      type: string
                    description: Annotations to add to the Service.
                    type: object
                  ipFamilyPolicy:
                    description: |-
                      IPFamilyPolicy represents the dual-stack-ness requested or required by a Service
                      See also: https://pkg.go.dev/k8s.io/api/core/v1#IPFamilyPolicy
                    enum:
                    - SingleStack
                    - PreferDualStack
                    - RequireDualStack
                    type: string
                  labels:
                    additionalProperties:
                      type: string
                    type: object
                  type:
                    default: ClusterIP
                    description: |-
                      Type of Service to create for the cluster. Must be one of: ClusterIP, LoadBalancer, NodePort.
                      For more info see https://pkg.go.dev/k8s.io/api/core/v1#ServiceType
                    enum:
                    - ClusterIP
                    - LoadBalancer
                    - NodePort
                    type: string
                type: object
              skipPostDeploySteps:
                description: |-
                  If unset, or set to false, the cluster will run `rabbitmq-queues rebalance all` whenever the cluster is updated.
                  Set to true to prevent the operator rebalancing queue leaders after a cluster update.
                  Has no effect if the cluster only consists of one node.
                  For more information, see https://www.rabbitmq.com/rabbitmq-queues.8.html#rebalance
                type: boolean
              terminationGracePeriodSeconds:
                default: 604800
                description: |-
                  TerminationGracePeriodSeconds is the timeout that each rabbitmqcluster pod will have to terminate gracefully.
                  It defaults to 604800 seconds ( a week long) to ensure that the container preStop lifecycle hook can finish running.
                  For more information, see: https://github.com/rabbitmq/cluster-operator/blob/main/docs/design/20200520-graceful-pod-termination.md
                format: int64
                minimum: 0
                type: integer
              tls:
                description: TLS-related configuration for the RabbitMQ cluster.
                properties:
                  caSecretName:
                    description: |-
                      Name of a Secret in the same Namespace as the RabbitmqCluster, containing the Certificate Authority's public certificate for TLS.
                      The Secret must store this as ca.crt.
                      This Secret can be created by running `kubectl create secret generic ca-secret --from-file=ca.crt=path/to/ca.crt`
                      Used for mTLS, and TLS for rabbitmq_web_stomp and rabbitmq_web_mqtt.
                    type: string
                  disableNonTLSListeners:
                    description: |-
                      When set to true, the RabbitmqCluster disables non-TLS listeners for RabbitMQ, management plugin and for any enabled plugins in the following list: stomp, mqtt, web_stomp, web_mqtt.
                      Only TLS-enabled clients will be able to connect.
                    type: boolean
                  secretName:
                    description: |-
                      Name of a Secret in the same Namespace as the RabbitmqCluster, containing the server's private key & public certificate for TLS.
                      The Secret must store these as tls.key and tls.crt, respectively.
                      This Secret can be created by running `kubectl create secret tls tls-secret --cert=path/to/tls.crt --key=path/to/tls.key`
                    type: string
                type: object
              tolerations:
                description: Tolerations is the list of Toleration resources attached
                  to each Pod in the RabbitmqCluster.
                items:
                  description: |-
                    The pod this Toleration is attached to tolerates any taint that matches
                    the triple <key,value,effect> using the matching operator <operator>.
                  properties:
                    effect:
                      description: |-
                        Effect indicates the taint effect to match. Empty means match all taint effects.
                        When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
                      type: string
                    key:
                      description: |-
                        Key is the taint key that the toleration applies to. Empty means match all taint keys.
                        If the key is empty, operator must be Exists; this combination means to match all values and all keys.
                      type: string
                    operator:
                      description: |-
                        Operator represents a key's relationship to the value.
                        Valid operators are Exists and Equal. Defaults to Equal.
                        Exists is equivalent to wildcard for value, so that a pod can
                        tolerate all taints of a particular category.
                      type: string
                    tolerationSeconds:
                      description: |-
                        TolerationSeconds represents the period of time the toleration (which must be
                        of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
                        it is not set, which means tolerate the taint forever (do not evict). Zero and
                        negative values will be treated as 0 (evict immediately) by the system.
                      format: int64
                      type: integer
                    value:
                      description: |-
                        Value is the taint value the toleration matches to.
                        If the operator is Exists, the value should be empty, otherwise just a regular string.
                      type: string
                  type: object
                type: array
            type: object
          status:
            description: Status presents the observed state of RabbitmqCluster
            properties:
              binding:
                description: |-
                  Binding exposes a secret containing the binding information for this
                  RabbitmqCluster. It implements the service binding Provisioned Service
                  duck type. See: https://github.com/servicebinding/spec#provisioned-service
                properties:
                  name:
                    default: ""
                    description: |-
                      Name of the referent.
                      This field is effectively required, but due to backwards compatibility is
                      allowed to be empty. Instances of this type with an empty value here are
                      almost certainly wrong.
                      More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                    type: string
                type: object
                x-kubernetes-map-type: atomic
              conditions:
                description: Set of Conditions describing the current state of the
                  RabbitmqCluster
                items:
                  properties:
                    lastTransitionTime:
                      description: The last time this Condition type changed.
                      format: date-time
                      type: string
                    message:
                      description: Full text reason for current status of the condition.
                      type: string
                    reason:
                      description: One word, camel-case reason for current status
                        of the condition.
                      type: string
                    status:
                      description: True, False, or Unknown
                      type: string
                    type:
                      description: Type indicates the scope of RabbitmqCluster status
                        addressed by the condition.
                      type: string
                  required:
                  - status
                  - type
                  type: object
                type: array
              defaultUser:
                description: Identifying information on internal resources
                properties:
                  secretReference:
                    description: |-
                      Reference to the Kubernetes Secret containing the credentials of the default
                      user.
                    properties:
                      keys:
                        additionalProperties:
                          type: string
                        description: Key-value pairs in the Secret corresponding to
                          `username`, `password`, `host`, and `port`
                        type: object
                      name:
                        description: Name of the Secret containing the default user
                          credentials
                        type: string
                      namespace:
                        description: Namespace of the Secret containing the default
                          user credentials
                        type: string
                    required:
                    - keys
                    - name
                    - namespace
                    type: object
                  serviceReference:
                    description: Reference to the Kubernetes Service serving the cluster.
                    properties:
                      name:
                        description: Name of the Service serving the cluster
                        type: string
                      namespace:
                        description: Namespace of the Service serving the cluster
                        type: string
                    required:
                    - name
                    - namespace
                    type: object
                type: object
              observedGeneration:
                description: |-
                  observedGeneration is the most recent successful generation observed for this RabbitmqCluster. It corresponds to the
                  RabbitmqCluster's generation, which is updated on mutation by the API Server.
                format: int64
                type: integer
            required:
            - conditions
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    categories:
    - all
    - rabbitmq
    kind: RabbitmqCluster
    listKind: RabbitmqClusterList
    plural: rabbitmqclusters
    shortNames:
    - rmq
    singular: rabbitmqcluster
  conditions:
  - lastTransitionTime: "2026-04-06T12:15:07Z"
    message: no conflicts found
    reason: NoConflicts
    status: "True"
    type: NamesAccepted
  - lastTransitionTime: "2026-04-06T12:15:08Z"
    message: the initial names have been accepted
    reason: InitialNamesAccepted
    status: "True"
    type: Established
  storedVersions:
  - v1beta1
