648 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			YAML
		
	
	
	
			
		
		
	
	
			648 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			YAML
		
	
	
	
apiVersion: apiextensions.k8s.io/v1
 | 
						|
kind: CustomResourceDefinition
 | 
						|
metadata:
 | 
						|
  name: postgresqls.acid.zalan.do
 | 
						|
spec:
 | 
						|
  group: acid.zalan.do
 | 
						|
  names:
 | 
						|
    kind: postgresql
 | 
						|
    listKind: postgresqlList
 | 
						|
    plural: postgresqls
 | 
						|
    singular: postgresql
 | 
						|
    shortNames:
 | 
						|
    - pg
 | 
						|
    categories:
 | 
						|
    - all
 | 
						|
  scope: Namespaced
 | 
						|
  versions:
 | 
						|
  - name: v1
 | 
						|
    served: true
 | 
						|
    storage: true
 | 
						|
    subresources:
 | 
						|
      status: {}
 | 
						|
    additionalPrinterColumns:
 | 
						|
    - name: Team
 | 
						|
      type: string
 | 
						|
      description: Team responsible for Postgres cluster
 | 
						|
      jsonPath: .spec.teamId
 | 
						|
    - name: Version
 | 
						|
      type: string
 | 
						|
      description: PostgreSQL version
 | 
						|
      jsonPath: .spec.postgresql.version
 | 
						|
    - name: Pods
 | 
						|
      type: integer
 | 
						|
      description: Number of Pods per Postgres cluster
 | 
						|
      jsonPath: .spec.numberOfInstances
 | 
						|
    - name: Volume
 | 
						|
      type: string
 | 
						|
      description: Size of the bound volume
 | 
						|
      jsonPath: .spec.volume.size
 | 
						|
    - name: CPU-Request
 | 
						|
      type: string
 | 
						|
      description: Requested CPU for Postgres containers
 | 
						|
      jsonPath: .spec.resources.requests.cpu
 | 
						|
    - name: Memory-Request
 | 
						|
      type: string
 | 
						|
      description: Requested memory for Postgres containers
 | 
						|
      jsonPath: .spec.resources.requests.memory
 | 
						|
    - name: Age
 | 
						|
      type: date
 | 
						|
      jsonPath: .metadata.creationTimestamp
 | 
						|
    - name: Status
 | 
						|
      type: string
 | 
						|
      description: Current sync status of postgresql resource
 | 
						|
      jsonPath: .status.PostgresClusterStatus
 | 
						|
    schema:
 | 
						|
      openAPIV3Schema:
 | 
						|
        type: object
 | 
						|
        required:
 | 
						|
          - kind
 | 
						|
          - apiVersion
 | 
						|
          - spec
 | 
						|
        properties:
 | 
						|
          kind:
 | 
						|
            type: string
 | 
						|
            enum:
 | 
						|
              - postgresql
 | 
						|
          apiVersion:
 | 
						|
            type: string
 | 
						|
            enum:
 | 
						|
              - acid.zalan.do/v1
 | 
						|
          spec:
 | 
						|
            type: object
 | 
						|
            required:
 | 
						|
              - numberOfInstances
 | 
						|
              - teamId
 | 
						|
              - postgresql
 | 
						|
              - volume
 | 
						|
            properties:
 | 
						|
              additionalVolumes:
 | 
						|
                type: array
 | 
						|
                items:
 | 
						|
                  type: object
 | 
						|
                  required:
 | 
						|
                    - name
 | 
						|
                    - mountPath
 | 
						|
                    - volumeSource
 | 
						|
                  properties:
 | 
						|
                    name:
 | 
						|
                      type: string
 | 
						|
                    mountPath:
 | 
						|
                      type: string
 | 
						|
                    targetContainers:
 | 
						|
                      type: array
 | 
						|
                      nullable: true
 | 
						|
                      items:
 | 
						|
                        type: string
 | 
						|
                    volumeSource:
 | 
						|
                      type: object
 | 
						|
                      x-kubernetes-preserve-unknown-fields: true
 | 
						|
                    subPath:
 | 
						|
                      type: string
 | 
						|
              allowedSourceRanges:
 | 
						|
                type: array
 | 
						|
                nullable: true
 | 
						|
                items:
 | 
						|
                  type: string
 | 
						|
                  pattern: '^(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\/(\d|[1-2]\d|3[0-2])$'
 | 
						|
              clone:
 | 
						|
                type: object
 | 
						|
                required:
 | 
						|
                  - cluster
 | 
						|
                properties:
 | 
						|
                  cluster:
 | 
						|
                    type: string
 | 
						|
                  s3_endpoint:
 | 
						|
                    type: string
 | 
						|
                  s3_access_key_id:
 | 
						|
                    type: string
 | 
						|
                  s3_secret_access_key:
 | 
						|
                    type: string
 | 
						|
                  s3_force_path_style:
 | 
						|
                    type: boolean
 | 
						|
                  s3_wal_path:
 | 
						|
                    type: string
 | 
						|
                  timestamp:
 | 
						|
                    type: string
 | 
						|
                    pattern: '^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(([+-]([01][0-9]|2[0-3]):[0-5][0-9]))$'
 | 
						|
                    # The regexp matches the date-time format (RFC 3339 Section 5.6) that specifies a timezone as an offset relative to UTC
 | 
						|
                    # Example: 1996-12-19T16:39:57-08:00
 | 
						|
                    # Note: this field requires a timezone
 | 
						|
                  uid:
 | 
						|
                    format: uuid
 | 
						|
                    type: string
 | 
						|
              connectionPooler:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  dockerImage:
 | 
						|
                    type: string
 | 
						|
                  maxDBConnections:
 | 
						|
                    type: integer
 | 
						|
                  mode:
 | 
						|
                    type: string
 | 
						|
                    enum:
 | 
						|
                      - "session"
 | 
						|
                      - "transaction"
 | 
						|
                  numberOfInstances:
 | 
						|
                    type: integer
 | 
						|
                    minimum: 1
 | 
						|
                  resources:
 | 
						|
                    type: object
 | 
						|
                    properties:
 | 
						|
                      limits:
 | 
						|
                        type: object
 | 
						|
                        properties:
 | 
						|
                          cpu:
 | 
						|
                            type: string
 | 
						|
                            pattern: '^(\d+m|\d+(\.\d{1,3})?)$'
 | 
						|
                          memory:
 | 
						|
                            type: string
 | 
						|
                            pattern: '^(\d+(e\d+)?|\d+(\.\d+)?(e\d+)?[EPTGMK]i?)$'
 | 
						|
                      requests:
 | 
						|
                        type: object
 | 
						|
                        properties:
 | 
						|
                          cpu:
 | 
						|
                            type: string
 | 
						|
                            pattern: '^(\d+m|\d+(\.\d{1,3})?)$'
 | 
						|
                          memory:
 | 
						|
                            type: string
 | 
						|
                            pattern: '^(\d+(e\d+)?|\d+(\.\d+)?(e\d+)?[EPTGMK]i?)$'
 | 
						|
                  schema:
 | 
						|
                    type: string
 | 
						|
                  user:
 | 
						|
                    type: string
 | 
						|
              databases:
 | 
						|
                type: object
 | 
						|
                additionalProperties:
 | 
						|
                  type: string
 | 
						|
                # Note: usernames specified here as database owners must be declared in the users key of the spec key.
 | 
						|
              dockerImage:
 | 
						|
                type: string
 | 
						|
              enableConnectionPooler:
 | 
						|
                type: boolean
 | 
						|
              enableReplicaConnectionPooler:
 | 
						|
                type: boolean
 | 
						|
              enableLogicalBackup:
 | 
						|
                type: boolean
 | 
						|
              enableMasterLoadBalancer:
 | 
						|
                type: boolean
 | 
						|
              enableMasterPoolerLoadBalancer:
 | 
						|
                type: boolean
 | 
						|
              enableReplicaLoadBalancer:
 | 
						|
                type: boolean
 | 
						|
              enableReplicaPoolerLoadBalancer:
 | 
						|
                type: boolean
 | 
						|
              enableShmVolume:
 | 
						|
                type: boolean
 | 
						|
              env:
 | 
						|
                type: array
 | 
						|
                nullable: true
 | 
						|
                items:
 | 
						|
                  type: object
 | 
						|
                  x-kubernetes-preserve-unknown-fields: true
 | 
						|
              init_containers:
 | 
						|
                type: array
 | 
						|
                description: deprecated
 | 
						|
                nullable: true
 | 
						|
                items:
 | 
						|
                  type: object
 | 
						|
                  x-kubernetes-preserve-unknown-fields: true
 | 
						|
              initContainers:
 | 
						|
                type: array
 | 
						|
                nullable: true
 | 
						|
                items:
 | 
						|
                  type: object
 | 
						|
                  x-kubernetes-preserve-unknown-fields: true
 | 
						|
              logicalBackupSchedule:
 | 
						|
                type: string
 | 
						|
                pattern: '^(\d+|\*)(/\d+)?(\s+(\d+|\*)(/\d+)?){4}$'
 | 
						|
              maintenanceWindows:
 | 
						|
                type: array
 | 
						|
                items:
 | 
						|
                  type: string
 | 
						|
                  pattern: '^\ *((Mon|Tue|Wed|Thu|Fri|Sat|Sun):(2[0-3]|[01]?\d):([0-5]?\d)|(2[0-3]|[01]?\d):([0-5]?\d))-((Mon|Tue|Wed|Thu|Fri|Sat|Sun):(2[0-3]|[01]?\d):([0-5]?\d)|(2[0-3]|[01]?\d):([0-5]?\d))\ *$'
 | 
						|
              nodeAffinity:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  preferredDuringSchedulingIgnoredDuringExecution:
 | 
						|
                    type: array
 | 
						|
                    items:
 | 
						|
                      type: object
 | 
						|
                      required:
 | 
						|
                      - preference
 | 
						|
                      - weight
 | 
						|
                      properties:
 | 
						|
                        preference:
 | 
						|
                          type: object
 | 
						|
                          properties:
 | 
						|
                            matchExpressions:
 | 
						|
                              type: array
 | 
						|
                              items:
 | 
						|
                                type: object
 | 
						|
                                required:
 | 
						|
                                - key
 | 
						|
                                - operator
 | 
						|
                                properties:
 | 
						|
                                  key:
 | 
						|
                                    type: string
 | 
						|
                                  operator:
 | 
						|
                                    type: string
 | 
						|
                                  values:
 | 
						|
                                    type: array
 | 
						|
                                    items:
 | 
						|
                                      type: string
 | 
						|
                            matchFields:
 | 
						|
                              type: array
 | 
						|
                              items:
 | 
						|
                                type: object
 | 
						|
                                required:
 | 
						|
                                - key
 | 
						|
                                - operator
 | 
						|
                                properties:
 | 
						|
                                  key:
 | 
						|
                                    type: string
 | 
						|
                                  operator:
 | 
						|
                                    type: string
 | 
						|
                                  values:
 | 
						|
                                    type: array
 | 
						|
                                    items:
 | 
						|
                                      type: string
 | 
						|
                        weight:
 | 
						|
                          format: int32
 | 
						|
                          type: integer
 | 
						|
                  requiredDuringSchedulingIgnoredDuringExecution:
 | 
						|
                    type: object
 | 
						|
                    required:
 | 
						|
                    - nodeSelectorTerms
 | 
						|
                    properties:
 | 
						|
                      nodeSelectorTerms:
 | 
						|
                        type: array
 | 
						|
                        items:
 | 
						|
                          type: object
 | 
						|
                          properties:
 | 
						|
                            matchExpressions:
 | 
						|
                              type: array
 | 
						|
                              items:
 | 
						|
                                type: object
 | 
						|
                                required:
 | 
						|
                                - key
 | 
						|
                                - operator
 | 
						|
                                properties:
 | 
						|
                                  key:
 | 
						|
                                    type: string
 | 
						|
                                  operator:
 | 
						|
                                    type: string
 | 
						|
                                  values:
 | 
						|
                                    type: array
 | 
						|
                                    items:
 | 
						|
                                      type: string
 | 
						|
                            matchFields:
 | 
						|
                              type: array
 | 
						|
                              items:
 | 
						|
                                type: object
 | 
						|
                                required:
 | 
						|
                                - key
 | 
						|
                                - operator
 | 
						|
                                properties:
 | 
						|
                                  key:
 | 
						|
                                    type: string
 | 
						|
                                  operator:
 | 
						|
                                    type: string
 | 
						|
                                  values:
 | 
						|
                                    type: array
 | 
						|
                                    items:
 | 
						|
                                      type: string
 | 
						|
              numberOfInstances:
 | 
						|
                type: integer
 | 
						|
                minimum: 0
 | 
						|
              patroni:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  failsafe_mode:
 | 
						|
                    type: boolean
 | 
						|
                  initdb:
 | 
						|
                    type: object
 | 
						|
                    additionalProperties:
 | 
						|
                      type: string
 | 
						|
                  loop_wait:
 | 
						|
                    type: integer
 | 
						|
                  maximum_lag_on_failover:
 | 
						|
                    type: integer
 | 
						|
                  pg_hba:
 | 
						|
                    type: array
 | 
						|
                    items:
 | 
						|
                      type: string
 | 
						|
                  retry_timeout:
 | 
						|
                    type: integer
 | 
						|
                  slots:
 | 
						|
                    type: object
 | 
						|
                    additionalProperties:
 | 
						|
                      type: object
 | 
						|
                      additionalProperties:
 | 
						|
                        type: string
 | 
						|
                  synchronous_mode:
 | 
						|
                    type: boolean
 | 
						|
                  synchronous_mode_strict:
 | 
						|
                    type: boolean
 | 
						|
                  synchronous_node_count:
 | 
						|
                    type: integer
 | 
						|
                  ttl:
 | 
						|
                    type: integer
 | 
						|
              podAnnotations:
 | 
						|
                type: object
 | 
						|
                additionalProperties:
 | 
						|
                  type: string
 | 
						|
              pod_priority_class_name:
 | 
						|
                type: string
 | 
						|
                description: deprecated
 | 
						|
              podPriorityClassName:
 | 
						|
                type: string
 | 
						|
              postgresql:
 | 
						|
                type: object
 | 
						|
                required:
 | 
						|
                  - version
 | 
						|
                properties:
 | 
						|
                  version:
 | 
						|
                    type: string
 | 
						|
                    enum:
 | 
						|
                      - "9.5"
 | 
						|
                      - "9.6"
 | 
						|
                      - "10"
 | 
						|
                      - "11"
 | 
						|
                      - "12"
 | 
						|
                      - "13"
 | 
						|
                      - "14"
 | 
						|
                  parameters:
 | 
						|
                    type: object
 | 
						|
                    additionalProperties:
 | 
						|
                      type: string
 | 
						|
              preparedDatabases:
 | 
						|
                type: object
 | 
						|
                additionalProperties:
 | 
						|
                  type: object
 | 
						|
                  properties:
 | 
						|
                    defaultUsers:
 | 
						|
                      type: boolean
 | 
						|
                    extensions:
 | 
						|
                      type: object
 | 
						|
                      additionalProperties:
 | 
						|
                        type: string
 | 
						|
                    schemas:
 | 
						|
                      type: object
 | 
						|
                      additionalProperties:
 | 
						|
                        type: object
 | 
						|
                        properties:
 | 
						|
                          defaultUsers:
 | 
						|
                            type: boolean
 | 
						|
                          defaultRoles:
 | 
						|
                            type: boolean
 | 
						|
                    secretNamespace:
 | 
						|
                      type: string
 | 
						|
              replicaLoadBalancer:
 | 
						|
                type: boolean
 | 
						|
                description: deprecated
 | 
						|
              resources:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  limits:
 | 
						|
                    type: object
 | 
						|
                    properties:
 | 
						|
                      cpu:
 | 
						|
                        type: string
 | 
						|
                        # Decimal natural followed by m, or decimal natural followed by
 | 
						|
                        # dot followed by up to three decimal digits.
 | 
						|
                        #
 | 
						|
                        # This is because the Kubernetes CPU resource has millis as the
 | 
						|
                        # maximum precision.  The actual values are checked in code
 | 
						|
                        # because the regular expression would be huge and horrible and
 | 
						|
                        # not very helpful in validation error messages; this one checks
 | 
						|
                        # only the format of the given number.
 | 
						|
                        #
 | 
						|
                        # https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#meaning-of-cpu
 | 
						|
                        pattern: '^(\d+m|\d+(\.\d{1,3})?)$'
 | 
						|
                        # Note: the value specified here must not be zero or be lower
 | 
						|
                        # than the corresponding request.
 | 
						|
                      memory:
 | 
						|
                        type: string
 | 
						|
                        # You can express memory as a plain integer or as a fixed-point
 | 
						|
                        # integer using one of these suffixes: E, P, T, G, M, k. You can
 | 
						|
                        # also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki
 | 
						|
                        #
 | 
						|
                        # https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#meaning-of-memory
 | 
						|
                        pattern: '^(\d+(e\d+)?|\d+(\.\d+)?(e\d+)?[EPTGMK]i?)$'
 | 
						|
                        # Note: the value specified here must not be zero or be higher
 | 
						|
                        # than the corresponding limit.
 | 
						|
                  requests:
 | 
						|
                    type: object
 | 
						|
                    properties:
 | 
						|
                      cpu:
 | 
						|
                        type: string
 | 
						|
                        pattern: '^(\d+m|\d+(\.\d{1,3})?)$'
 | 
						|
                      memory:
 | 
						|
                        type: string
 | 
						|
                        pattern: '^(\d+(e\d+)?|\d+(\.\d+)?(e\d+)?[EPTGMK]i?)$'
 | 
						|
              schedulerName:
 | 
						|
                type: string
 | 
						|
              serviceAnnotations:
 | 
						|
                type: object
 | 
						|
                additionalProperties:
 | 
						|
                  type: string
 | 
						|
              sidecars:
 | 
						|
                type: array
 | 
						|
                nullable: true
 | 
						|
                items:
 | 
						|
                  type: object
 | 
						|
                  x-kubernetes-preserve-unknown-fields: true
 | 
						|
              spiloRunAsUser:
 | 
						|
                type: integer
 | 
						|
              spiloRunAsGroup:
 | 
						|
                type: integer
 | 
						|
              spiloFSGroup:
 | 
						|
                type: integer
 | 
						|
              standby:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  s3_wal_path:
 | 
						|
                    type: string
 | 
						|
                  gs_wal_path:
 | 
						|
                    type: string
 | 
						|
                  standby_host:
 | 
						|
                    type: string
 | 
						|
                  standby_port:
 | 
						|
                    type: string
 | 
						|
                oneOf:
 | 
						|
                - required:
 | 
						|
                  - s3_wal_path
 | 
						|
                - required:
 | 
						|
                  - gs_wal_path
 | 
						|
                - required:
 | 
						|
                  - standby_host
 | 
						|
              streams:
 | 
						|
                type: array
 | 
						|
                items:
 | 
						|
                  type: object
 | 
						|
                  required:
 | 
						|
                    - applicationId
 | 
						|
                    - database
 | 
						|
                    - tables
 | 
						|
                  properties:
 | 
						|
                    applicationId:
 | 
						|
                      type: string
 | 
						|
                    batchSize:
 | 
						|
                      type: integer
 | 
						|
                    database:
 | 
						|
                      type: string
 | 
						|
                    filter:
 | 
						|
                      type: object
 | 
						|
                      additionalProperties:
 | 
						|
                        type: string
 | 
						|
                    tables:
 | 
						|
                      type: object
 | 
						|
                      additionalProperties:
 | 
						|
                        type: object
 | 
						|
                        required:
 | 
						|
                          - eventType
 | 
						|
                        properties:
 | 
						|
                          eventType:
 | 
						|
                            type: string
 | 
						|
                          idColumn:
 | 
						|
                            type: string
 | 
						|
                          payloadColumn:
 | 
						|
                            type: string
 | 
						|
              teamId:
 | 
						|
                type: string
 | 
						|
              tls:
 | 
						|
                type: object
 | 
						|
                required:
 | 
						|
                  - secretName
 | 
						|
                properties:
 | 
						|
                  secretName:
 | 
						|
                    type: string
 | 
						|
                  certificateFile:
 | 
						|
                    type: string
 | 
						|
                  privateKeyFile:
 | 
						|
                    type: string
 | 
						|
                  caFile:
 | 
						|
                    type: string
 | 
						|
                  caSecretName:
 | 
						|
                    type: string
 | 
						|
              tolerations:
 | 
						|
                type: array
 | 
						|
                items:
 | 
						|
                  type: object
 | 
						|
                  properties:
 | 
						|
                    key:
 | 
						|
                      type: string
 | 
						|
                    operator:
 | 
						|
                      type: string
 | 
						|
                      enum:
 | 
						|
                        - Equal
 | 
						|
                        - Exists
 | 
						|
                    value:
 | 
						|
                      type: string
 | 
						|
                    effect:
 | 
						|
                      type: string
 | 
						|
                      enum:
 | 
						|
                        - NoExecute
 | 
						|
                        - NoSchedule
 | 
						|
                        - PreferNoSchedule
 | 
						|
                    tolerationSeconds:
 | 
						|
                      type: integer
 | 
						|
              useLoadBalancer:
 | 
						|
                type: boolean
 | 
						|
                description: deprecated
 | 
						|
              users:
 | 
						|
                type: object
 | 
						|
                additionalProperties:
 | 
						|
                  type: array
 | 
						|
                  nullable: true
 | 
						|
                  items:
 | 
						|
                    type: string
 | 
						|
                    enum:
 | 
						|
                    - bypassrls
 | 
						|
                    - BYPASSRLS
 | 
						|
                    - nobypassrls
 | 
						|
                    - NOBYPASSRLS
 | 
						|
                    - createdb
 | 
						|
                    - CREATEDB
 | 
						|
                    - nocreatedb
 | 
						|
                    - NOCREATEDB
 | 
						|
                    - createrole
 | 
						|
                    - CREATEROLE
 | 
						|
                    - nocreaterole
 | 
						|
                    - NOCREATEROLE
 | 
						|
                    - inherit
 | 
						|
                    - INHERIT
 | 
						|
                    - noinherit
 | 
						|
                    - NOINHERIT
 | 
						|
                    - login
 | 
						|
                    - LOGIN
 | 
						|
                    - nologin
 | 
						|
                    - NOLOGIN
 | 
						|
                    - replication
 | 
						|
                    - REPLICATION
 | 
						|
                    - noreplication
 | 
						|
                    - NOREPLICATION
 | 
						|
                    - superuser
 | 
						|
                    - SUPERUSER
 | 
						|
                    - nosuperuser
 | 
						|
                    - NOSUPERUSER
 | 
						|
              usersWithInPlaceSecretRotation:
 | 
						|
                type: array
 | 
						|
                nullable: true
 | 
						|
                items:
 | 
						|
                  type: string
 | 
						|
              usersWithSecretRotation:
 | 
						|
                type: array
 | 
						|
                nullable: true
 | 
						|
                items:
 | 
						|
                  type: string
 | 
						|
              volume:
 | 
						|
                type: object
 | 
						|
                required:
 | 
						|
                  - size
 | 
						|
                properties:
 | 
						|
                  iops:
 | 
						|
                    type: integer
 | 
						|
                  selector:
 | 
						|
                    type: object
 | 
						|
                    properties:
 | 
						|
                      matchExpressions:
 | 
						|
                        type: array
 | 
						|
                        items:
 | 
						|
                          type: object
 | 
						|
                          required:
 | 
						|
                            - key
 | 
						|
                            - operator
 | 
						|
                          properties:
 | 
						|
                            key:
 | 
						|
                              type: string
 | 
						|
                            operator:
 | 
						|
                              type: string
 | 
						|
                              enum:
 | 
						|
                                - DoesNotExist
 | 
						|
                                - Exists
 | 
						|
                                - In
 | 
						|
                                - NotIn
 | 
						|
                            values:
 | 
						|
                              type: array
 | 
						|
                              items:
 | 
						|
                                type: string
 | 
						|
                      matchLabels:
 | 
						|
                        type: object
 | 
						|
                        x-kubernetes-preserve-unknown-fields: true
 | 
						|
                  size:
 | 
						|
                    type: string
 | 
						|
                    pattern: '^(\d+(e\d+)?|\d+(\.\d+)?(e\d+)?[EPTGMK]i?)$'
 | 
						|
                    # Note: the value specified here must not be zero.
 | 
						|
                  storageClass:
 | 
						|
                    type: string
 | 
						|
                  subPath:
 | 
						|
                    type: string
 | 
						|
                  throughput:
 | 
						|
                    type: integer
 | 
						|
          status:
 | 
						|
            type: object
 | 
						|
            additionalProperties:
 | 
						|
              type: string
 |