Skip to content
Snippets Groups Projects
0prometheusCustomResourceDefinition.yaml 739 KiB
Newer Older
                            Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
Lili Cosic's avatar
Lili Cosic committed
                          items:
paulfantom's avatar
paulfantom committed
                            type: string
                          x-kubernetes-list-type: atomic
Lili Cosic's avatar
Lili Cosic committed
                      type: object
paulfantom's avatar
paulfantom committed
                    flexVolume:
                      description: |-
                        flexVolume represents a generic volume resource that is
                        provisioned/attached using an exec based plugin.
                        Deprecated: FlexVolume is deprecated. Consider using a CSIDriver instead.
                      properties:
paulfantom's avatar
paulfantom committed
                        driver:
                          description: driver is the name of the driver to use for this volume.
paulfantom's avatar
paulfantom committed
                          type: string
                        fsType:
                          description: |-
                            fsType is the filesystem type to mount.
                            Must be a filesystem type supported by the host operating system.
                            Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script.
paulfantom's avatar
paulfantom committed
                          type: string
                        options:
                          additionalProperties:
                            type: string
                          description: 'options is Optional: this field holds extra command options if any.'
                          type: object
paulfantom's avatar
paulfantom committed
                        readOnly:
                          description: |-
                            readOnly is Optional: defaults to false (read/write). ReadOnly here will force
                            the ReadOnly setting in VolumeMounts.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: |-
                            secretRef is Optional: secretRef is reference to the secret object containing
                            sensitive information to pass to the plugin scripts. This may be
                            empty if no secret object is specified. If the secret object
                            contains more than one secret, all secrets are passed to the plugin
                            scripts.
                          properties:
                            name:
                              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
paulfantom's avatar
paulfantom committed
                      required:
                      - driver
                      type: object
paulfantom's avatar
paulfantom committed
                    flocker:
                      description: |-
                        flocker represents a Flocker volume attached to a kubelet's host machine. This depends on the Flocker control service being running.
                        Deprecated: Flocker is deprecated and the in-tree flocker type is no longer supported.
                      properties:
paulfantom's avatar
paulfantom committed
                        datasetName:
                          description: |-
                            datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
                            should be considered as deprecated
paulfantom's avatar
paulfantom committed
                          type: string
                        datasetUUID:
                          description: datasetUUID is the UUID of the dataset. This is unique identifier of a Flocker dataset
paulfantom's avatar
paulfantom committed
                          type: string
                      type: object
paulfantom's avatar
paulfantom committed
                    gcePersistentDisk:
                      description: |-
                        gcePersistentDisk represents a GCE Disk resource that is attached to a
                        kubelet's host machine and then exposed to the pod.
                        Deprecated: GCEPersistentDisk is deprecated. All operations for the in-tree
                        gcePersistentDisk type are redirected to the pd.csi.storage.gke.io CSI driver.
                        More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
                      properties:
paulfantom's avatar
paulfantom committed
                        fsType:
                          description: |-
                            fsType is filesystem type of the volume that you want to mount.
                            Tip: Ensure that the filesystem type is supported by the host operating system.
                            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
                          type: string
paulfantom's avatar
paulfantom committed
                        partition:
                          description: |-
                            partition is the partition in the volume that you want to mount.
                            If omitted, the default is to mount by volume name.
                            Examples: For volume /dev/sda1, you specify the partition as "1".
                            Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        pdName:
                          description: |-
                            pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
                          type: string
paulfantom's avatar
paulfantom committed
                        readOnly:
                          description: |-
                            readOnly here will force the ReadOnly setting in VolumeMounts.
                            Defaults to false.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
                          type: boolean
                      required:
paulfantom's avatar
paulfantom committed
                      - pdName
                      type: object
paulfantom's avatar
paulfantom committed
                    gitRepo:
                      description: |-
                        gitRepo represents a git repository at a particular revision.
                        Deprecated: GitRepo is deprecated. To provision a container with a git repo, mount an
                        EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
                        into the Pod's container.
paulfantom's avatar
paulfantom committed
                      properties:
                        directory:
                          description: |-
                            directory is the target directory name.
                            Must not contain or start with '..'.  If '.' is supplied, the volume directory will be the
                            git repository.  Otherwise, if specified, the volume will contain the git repository in
                            the subdirectory with the given name.
paulfantom's avatar
paulfantom committed
                          type: string
                        repository:
                          description: repository is the URL
paulfantom's avatar
paulfantom committed
                          type: string
                        revision:
                          description: revision is the commit hash for the specified revision.
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - repository
Lili Cosic's avatar
Lili Cosic committed
                      type: object
paulfantom's avatar
paulfantom committed
                    glusterfs:
                      description: |-
                        glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
                        Deprecated: Glusterfs is deprecated and the in-tree glusterfs type is no longer supported.
                        More info: https://examples.k8s.io/volumes/glusterfs/README.md
paulfantom's avatar
paulfantom committed
                      properties:
                        endpoints:
                          description: |-
                            endpoints is the endpoint name that details Glusterfs topology.
                            More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
paulfantom's avatar
paulfantom committed
                          type: string
                        path:
                          description: |-
                            path is the Glusterfs volume path.
                            More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: |-
                            readOnly here will force the Glusterfs volume to be mounted with read-only permissions.
                            Defaults to false.
                            More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
paulfantom's avatar
paulfantom committed
                          type: boolean
                      required:
                      - endpoints
                      - path
Lili Cosic's avatar
Lili Cosic committed
                      type: object
paulfantom's avatar
paulfantom committed
                    hostPath:
                      description: |-
                        hostPath represents a pre-existing file or directory on the host
                        machine that is directly exposed to the container. This is generally
                        used for system agents or other privileged things that are allowed
                        to see the host machine. Most containers will NOT need this.
                        More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
paulfantom's avatar
paulfantom committed
                      properties:
                        path:
                          description: |-
                            path of the directory on the host.
                            If the path is a symlink, it will follow the link to the real path.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
Lili Cosic's avatar
Lili Cosic committed
                          type: string
paulfantom's avatar
paulfantom committed
                        type:
                          description: |-
                            type for HostPath Volume
                            Defaults to ""
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - path
                      type: object
                    image:
                      description: |-
                        image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
                        The volume is resolved at pod startup depending on which PullPolicy value is provided:

                        - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
                        - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
                        - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.

                        The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation.
                        A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message.
                        The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field.
                        The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images.
                        The volume will be mounted read-only (ro) and non-executable files (noexec).
                        Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath).
                        The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type.
                      properties:
                        pullPolicy:
                          description: |-
                            Policy for pulling OCI objects. Possible values are:
                            Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
                            Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
                            IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
                            Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
                          type: string
                        reference:
                          description: |-
                            Required: Image or artifact reference to be used.
                            Behaves in the same way as pod.spec.containers[*].image.
                            Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
                            More info: https://kubernetes.io/docs/concepts/containers/images
                            This field is optional to allow higher level config management to default or override
                            container images in workload controllers like Deployments and StatefulSets.
                          type: string
                      type: object
paulfantom's avatar
paulfantom committed
                    iscsi:
                      description: |-
                        iscsi represents an ISCSI Disk resource that is attached to a
                        kubelet's host machine and then exposed to the pod.
                        More info: https://examples.k8s.io/volumes/iscsi/README.md
paulfantom's avatar
paulfantom committed
                      properties:
                        chapAuthDiscovery:
                          description: chapAuthDiscovery defines whether support iSCSI Discovery CHAP authentication
paulfantom's avatar
paulfantom committed
                          type: boolean
                        chapAuthSession:
                          description: chapAuthSession defines whether support iSCSI Session CHAP authentication
paulfantom's avatar
paulfantom committed
                          type: boolean
                        fsType:
                          description: |-
                            fsType is the filesystem type of the volume that you want to mount.
                            Tip: Ensure that the filesystem type is supported by the host operating system.
                            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
paulfantom's avatar
paulfantom committed
                          type: string
                        initiatorName:
                          description: |-
                            initiatorName is the custom iSCSI Initiator Name.
                            If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
                            <target portal>:<volume name> will be created for the connection.
paulfantom's avatar
paulfantom committed
                          type: string
                        iqn:
                          description: iqn is the target iSCSI Qualified Name.
paulfantom's avatar
paulfantom committed
                          type: string
                        iscsiInterface:
                          description: |-
                            iscsiInterface is the interface Name that uses an iSCSI transport.
                            Defaults to 'default' (tcp).
paulfantom's avatar
paulfantom committed
                          type: string
                        lun:
                          description: lun represents iSCSI Target Lun number.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        portals:
                          description: |-
                            portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port
                            is other than default (typically TCP ports 860 and 3260).
paulfantom's avatar
paulfantom committed
                          items:
Lili Cosic's avatar
Lili Cosic committed
                            type: string
paulfantom's avatar
paulfantom committed
                          type: array
                          x-kubernetes-list-type: atomic
paulfantom's avatar
paulfantom committed
                        readOnly:
                          description: |-
                            readOnly here will force the ReadOnly setting in VolumeMounts.
                            Defaults to false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: secretRef is the CHAP Secret for iSCSI target and initiator authentication
Lili Cosic's avatar
Lili Cosic committed
                          properties:
paulfantom's avatar
paulfantom committed
                            name:
                              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
Lili Cosic's avatar
Lili Cosic committed
                              type: string
                          type: object
                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                        targetPortal:
                          description: |-
                            targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port
                            is other than default (typically TCP ports 860 and 3260).
                          type: string
paulfantom's avatar
paulfantom committed
                      required:
                      - iqn
                      - lun
                      - targetPortal
                      type: object
                    name:
                      description: |-
                        name of the volume.
                        Must be a DNS_LABEL and unique within the pod.
                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
paulfantom's avatar
paulfantom committed
                      type: string
                    nfs:
                      description: |-
                        nfs represents an NFS mount on the host that shares a pod's lifetime
                        More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
paulfantom's avatar
paulfantom committed
                      properties:
                        path:
                          description: |-
                            path that is exported by the NFS server.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
paulfantom's avatar
paulfantom committed
                        readOnly:
                          description: |-
                            readOnly here will force the NFS export to be mounted with read-only permissions.
                            Defaults to false.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
paulfantom's avatar
paulfantom committed
                          type: boolean
                        server:
                          description: |-
                            server is the hostname or IP address of the NFS server.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
paulfantom's avatar
paulfantom committed
                      required:
                      - path
                      - server
                      type: object
                    persistentVolumeClaim:
                      description: |-
                        persistentVolumeClaimVolumeSource represents a reference to a
                        PersistentVolumeClaim in the same namespace.
                        More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
paulfantom's avatar
paulfantom committed
                      properties:
                        claimName:
                          description: |-
                            claimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume.
                            More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
                          type: string
paulfantom's avatar
paulfantom committed
                        readOnly:
                          description: |-
                            readOnly Will force the ReadOnly setting in VolumeMounts.
                            Default false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                      required:
                      - claimName
                      type: object
                    photonPersistentDisk:
                      description: |-
                        photonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine.
                        Deprecated: PhotonPersistentDisk is deprecated and the in-tree photonPersistentDisk type is no longer supported.
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: |-
                            fsType is the filesystem type to mount.
                            Must be a filesystem type supported by the host operating system.
                            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
paulfantom's avatar
paulfantom committed
                        pdID:
                          description: pdID is the ID that identifies Photon Controller persistent disk
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - pdID
                      type: object
                    portworxVolume:
                      description: |-
                        portworxVolume represents a portworx volume attached and mounted on kubelets host machine.
                        Deprecated: PortworxVolume is deprecated. All operations for the in-tree portworxVolume type
                        are redirected to the pxd.portworx.com CSI driver when the CSIMigrationPortworx feature-gate
                        is on.
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: |-
                            fSType represents the filesystem type to mount
                            Must be a filesystem type supported by the host operating system.
                            Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: |-
                            readOnly defaults to false (read/write). ReadOnly here will force
                            the ReadOnly setting in VolumeMounts.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        volumeID:
                          description: volumeID uniquely identifies a Portworx volume
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - volumeID
                      type: object
                    projected:
                      description: projected items for all in one resources secrets, configmaps, and downward API
paulfantom's avatar
paulfantom committed
                      properties:
                        defaultMode:
                          description: |-
                            defaultMode are the mode bits used to set permissions on created files by default.
                            Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
                            YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
                            Directories within the path are not affected by this setting.
                            This might be in conflict with other options that affect the file
                            mode, like fsGroup, and the result can be other mode bits set.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        sources:
                          description: |-
                            sources is the list of volume projections. Each entry in this list
                            handles one source.
paulfantom's avatar
paulfantom committed
                          items:
                            description: |-
                              Projection that may be projected along with other supported volume types.
                              Exactly one of these fields must be set.
paulfantom's avatar
paulfantom committed
                            properties:
                                description: |-
                                  ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
                                  of ClusterTrustBundle objects in an auto-updating file.

                                  Alpha, gated by the ClusterTrustBundleProjection feature gate.

                                  ClusterTrustBundle objects can either be selected by name, or by the
                                  combination of signer name and a label selector.

                                  Kubelet performs aggressive normalization of the PEM contents written
                                  into the pod filesystem.  Esoteric PEM features such as inter-block
                                  comments and block headers are stripped.  Certificates are deduplicated.
                                  The ordering of certificates within the file is arbitrary, and Kubelet
                                  may change the order over time.
                                    description: |-
                                      Select all ClusterTrustBundles that match this label selector.  Only has
                                      effect if signerName is set.  Mutually-exclusive with name.  If unset,
                                      interpreted as "match nothing".  If set but empty, interpreted as "match
                                      everything".
                                    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.
                                              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.
                                              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
                                  name:
                                    description: |-
                                      Select a single ClusterTrustBundle by object name.  Mutually-exclusive
                                      with signerName and labelSelector.
                                    description: |-
                                      If true, don't block pod startup if the referenced ClusterTrustBundle(s)
                                      aren't available.  If using name, then the named ClusterTrustBundle is
                                      allowed not to exist.  If using signerName, then the combination of
                                      signerName and labelSelector is allowed to match zero
                                      ClusterTrustBundles.
                                    type: boolean
                                  path:
                                    description: Relative path from the volume root to write the bundle.
                                    type: string
                                  signerName:
                                    description: |-
                                      Select all ClusterTrustBundles that match this signer name.
                                      Mutually-exclusive with name.  The contents of all selected
                                      ClusterTrustBundles will be unified and deduplicated.
                                    type: string
                                required:
                                - path
                                type: object
paulfantom's avatar
paulfantom committed
                              configMap:
                                description: configMap information about the configMap data to project
paulfantom's avatar
paulfantom committed
                                properties:
Lili Cosic's avatar
Lili Cosic committed
                                  items:
                                    description: |-
                                      items if unspecified, each key-value pair in the Data field of the referenced
                                      ConfigMap will be projected into the volume as a file whose name is the
                                      key and content is the value. If specified, the listed keys will be
                                      projected into the specified paths, and unlisted keys will not be
                                      present. If a key is specified which is not present in the ConfigMap,
                                      the volume setup will error unless it is marked optional. Paths must be
                                      relative and may not contain the '..' path or start with '..'.
paulfantom's avatar
paulfantom committed
                                    items:
                                      description: Maps a string key to a path within a volume.
paulfantom's avatar
paulfantom committed
                                      properties:
                                        key:
                                          description: key is the key to project.
paulfantom's avatar
paulfantom committed
                                          type: string
                                        mode:
                                          description: |-
                                            mode is Optional: mode bits used to set permissions on this file.
                                            Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
                                            YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
                                            If not specified, the volume defaultMode will be used.
                                            This might be in conflict with other options that affect the file
                                            mode, like fsGroup, and the result can be other mode bits set.
paulfantom's avatar
paulfantom committed
                                          format: int32
                                          type: integer
                                        path:
                                          description: |-
                                            path is the relative path of the file to map the key to.
                                            May not be an absolute path.
                                            May not contain the path element '..'.
                                            May not start with the string '..'.
paulfantom's avatar
paulfantom committed
                                          type: string
                                      required:
                                      - key
                                      - path
                                      type: object
                                    type: array
                                    x-kubernetes-list-type: atomic
paulfantom's avatar
paulfantom committed
                                  name:
                                    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
paulfantom's avatar
paulfantom committed
                                    type: string
                                  optional:
                                    description: optional specify whether the ConfigMap or its keys must be defined
paulfantom's avatar
paulfantom committed
                                    type: boolean
                                type: object
                                x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                              downwardAPI:
                                description: downwardAPI information about the downwardAPI data to project
paulfantom's avatar
paulfantom committed
                                properties:
Lili Cosic's avatar
Lili Cosic committed
                                  items:
                                    description: Items is a list of DownwardAPIVolume file
paulfantom's avatar
paulfantom committed
                                    items:
                                      description: DownwardAPIVolumeFile represents information to create the file containing the pod field
paulfantom's avatar
paulfantom committed
                                      properties:
                                        fieldRef:
                                          description: 'Required: Selects a field of the pod: only annotations, labels, name, namespace and uid are supported.'
paulfantom's avatar
paulfantom committed
                                          properties:
                                            apiVersion:
                                              description: Version of the schema the FieldPath is written in terms of, defaults to "v1".
paulfantom's avatar
paulfantom committed
                                              type: string
                                            fieldPath:
                                              description: Path of the field to select in the specified API version.
paulfantom's avatar
paulfantom committed
                                              type: string
                                          required:
                                          - fieldPath
                                          type: object
                                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                                        mode:
                                          description: |-
                                            Optional: mode bits used to set permissions on this file, must be an octal value
                                            between 0000 and 0777 or a decimal value between 0 and 511.
                                            YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
                                            If not specified, the volume defaultMode will be used.
                                            This might be in conflict with other options that affect the file
                                            mode, like fsGroup, and the result can be other mode bits set.
paulfantom's avatar
paulfantom committed
                                          format: int32
                                          type: integer
                                        path:
                                          description: 'Required: Path is  the relative path name of the file to be created. Must not be absolute or contain the ''..'' path. Must be utf-8 encoded. The first item of the relative path must not start with ''..'''
paulfantom's avatar
paulfantom committed
                                          type: string
                                        resourceFieldRef:
                                          description: |-
                                            Selects a resource of the container: only resources limits and requests
                                            (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
paulfantom's avatar
paulfantom committed
                                          properties:
                                            containerName:
                                              description: 'Container name: required for volumes, optional for env vars'
paulfantom's avatar
paulfantom committed
                                              type: string
                                            divisor:
Lili Cosic's avatar
Lili Cosic committed
                                              anyOf:
                                              - type: integer
                                              - type: string
                                              description: Specifies the output format of the exposed resources, defaults to "1"
Lili Cosic's avatar
Lili Cosic committed
                                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                              x-kubernetes-int-or-string: true
paulfantom's avatar
paulfantom committed
                                            resource:
                                              description: 'Required: resource to select'
paulfantom's avatar
paulfantom committed
                                              type: string
                                          required:
                                          - resource
                                          type: object
                                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                                      required:
                                      - path
                                      type: object
                                    type: array
                                    x-kubernetes-list-type: atomic
paulfantom's avatar
paulfantom committed
                                type: object
                              secret:
                                description: secret information about the secret data to project
paulfantom's avatar
paulfantom committed
                                properties:
Lili Cosic's avatar
Lili Cosic committed
                                  items:
                                    description: |-
                                      items if unspecified, each key-value pair in the Data field of the referenced
                                      Secret will be projected into the volume as a file whose name is the
                                      key and content is the value. If specified, the listed keys will be
                                      projected into the specified paths, and unlisted keys will not be
                                      present. If a key is specified which is not present in the Secret,
                                      the volume setup will error unless it is marked optional. Paths must be
                                      relative and may not contain the '..' path or start with '..'.
paulfantom's avatar
paulfantom committed
                                    items:
                                      description: Maps a string key to a path within a volume.
paulfantom's avatar
paulfantom committed
                                      properties:
                                        key:
                                          description: key is the key to project.
paulfantom's avatar
paulfantom committed
                                          type: string
                                        mode:
                                          description: |-
                                            mode is Optional: mode bits used to set permissions on this file.
                                            Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
                                            YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
                                            If not specified, the volume defaultMode will be used.
                                            This might be in conflict with other options that affect the file
                                            mode, like fsGroup, and the result can be other mode bits set.
paulfantom's avatar
paulfantom committed
                                          format: int32
                                          type: integer
                                        path:
                                          description: |-
                                            path is the relative path of the file to map the key to.
                                            May not be an absolute path.
                                            May not contain the path element '..'.
                                            May not start with the string '..'.
paulfantom's avatar
paulfantom committed
                                          type: string
                                      required:
                                      - key
                                      - path
                                      type: object
                                    type: array
                                    x-kubernetes-list-type: atomic
paulfantom's avatar
paulfantom committed
                                  name:
                                    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
paulfantom's avatar
paulfantom committed
                                    type: string
                                  optional:
                                    description: optional field specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                                    type: boolean
                                type: object
                                x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                              serviceAccountToken:
                                description: serviceAccountToken is information about the serviceAccountToken data to project
paulfantom's avatar
paulfantom committed
                                properties:
                                  audience:
                                    description: |-
                                      audience is the intended audience of the token. A recipient of a token
                                      must identify itself with an identifier specified in the audience of the
                                      token, and otherwise should reject the token. The audience defaults to the
                                      identifier of the apiserver.
paulfantom's avatar
paulfantom committed
                                    type: string
                                  expirationSeconds:
                                    description: |-
                                      expirationSeconds is the requested duration of validity of the service
                                      account token. As the token approaches expiration, the kubelet volume
                                      plugin will proactively rotate the service account token. The kubelet will
                                      start trying to rotate the token if the token is older than 80 percent of
                                      its time to live or if the token is older than 24 hours.Defaults to 1 hour
                                      and must be at least 10 minutes.
paulfantom's avatar
paulfantom committed
                                    format: int64
                                    type: integer
                                  path:
                                    description: |-
                                      path is the path relative to the mount point of the file to project the
                                      token into.
paulfantom's avatar
paulfantom committed
                                    type: string
                                required:
                                - path
                                type: object
                            type: object
                          type: array
                          x-kubernetes-list-type: atomic
paulfantom's avatar
paulfantom committed
                      type: object
                    quobyte:
                      description: |-
                        quobyte represents a Quobyte mount on the host that shares a pod's lifetime.
                        Deprecated: Quobyte is deprecated and the in-tree quobyte type is no longer supported.
paulfantom's avatar
paulfantom committed
                      properties:
                        group:
                          description: |-
                            group to map volume access to
                            Default is no group
paulfantom's avatar
paulfantom committed
                        readOnly:
                          description: |-
                            readOnly here will force the Quobyte volume to be mounted with read-only permissions.
                            Defaults to false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        registry:
                          description: |-
                            registry represents a single or multiple Quobyte Registry services
                            specified as a string as host:port pair (multiple entries are separated with commas)
                            which acts as the central registry for volumes
paulfantom's avatar
paulfantom committed
                          type: string
                        tenant:
                          description: |-
                            tenant owning the given Quobyte volume in the Backend
                            Used with dynamically provisioned Quobyte volumes, value is set by the plugin
paulfantom's avatar
paulfantom committed
                          type: string
                        user:
                          description: |-
                            user to map volume access to
                            Defaults to serivceaccount user
paulfantom's avatar
paulfantom committed
                          type: string
                        volume:
                          description: volume is a string that references an already created Quobyte volume by name.
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - registry
                      - volume
                      type: object
                    rbd:
                      description: |-
                        rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
                        Deprecated: RBD is deprecated and the in-tree rbd type is no longer supported.
                        More info: https://examples.k8s.io/volumes/rbd/README.md
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: |-
                            fsType is the filesystem type of the volume that you want to mount.
                            Tip: Ensure that the filesystem type is supported by the host operating system.
                            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
paulfantom's avatar
paulfantom committed
                          type: string
                        image:
                          description: |-
                            image is the rados image name.
                            More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
paulfantom's avatar
paulfantom committed
                          type: string
                        keyring:
                          default: /etc/ceph/keyring
                          description: |-
                            keyring is the path to key ring for RBDUser.
                            Default is /etc/ceph/keyring.
                            More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
paulfantom's avatar
paulfantom committed
                          type: string
                        monitors:
                          description: |-
                            monitors is a collection of Ceph monitors.
                            More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
paulfantom's avatar
paulfantom committed
                          items:
Lili Cosic's avatar
Lili Cosic committed
                            type: string
paulfantom's avatar
paulfantom committed
                          type: array
                          x-kubernetes-list-type: atomic
paulfantom's avatar
paulfantom committed
                        pool:
                          description: |-
                            pool is the rados pool name.
                            Default is rbd.
                            More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: |-
                            readOnly here will force the ReadOnly setting in VolumeMounts.
                            Defaults to false.
                            More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: |-
                            secretRef is name of the authentication secret for RBDUser. If provided
                            overrides keyring.
                            Default is nil.
                            More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
Lili Cosic's avatar
Lili Cosic committed
                          properties:
paulfantom's avatar
paulfantom committed
                            name:
                              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
Lili Cosic's avatar
Lili Cosic committed
                              type: string
paulfantom's avatar
paulfantom committed
                          type: object
                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                        user:
                          description: |-
                            user is the rados user name.
                            Default is admin.
                            More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - image
                      - monitors
                      type: object
                    scaleIO:
                      description: |-
                        scaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.
                        Deprecated: ScaleIO is deprecated and the in-tree scaleIO type is no longer supported.
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: |-
                            fsType is the filesystem type to mount.
                            Must be a filesystem type supported by the host operating system.
                            Ex. "ext4", "xfs", "ntfs".
                            Default is "xfs".
paulfantom's avatar
paulfantom committed
                          type: string
                        gateway:
                          description: gateway is the host address of the ScaleIO API Gateway.
paulfantom's avatar
paulfantom committed
                          type: string
                        protectionDomain:
                          description: protectionDomain is the name of the ScaleIO Protection Domain for the configured storage.
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: |-
                            readOnly Defaults to false (read/write). ReadOnly here will force
                            the ReadOnly setting in VolumeMounts.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: |-
                            secretRef references to the secret for ScaleIO user and other
                            sensitive information. If this is not provided, Login operation will fail.
paulfantom's avatar
paulfantom committed
                          properties:
                            name:
                              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
Lili Cosic's avatar
Lili Cosic committed
                              type: string
                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                        sslEnabled:
                          description: sslEnabled Flag enable/disable SSL communication with Gateway, default false
paulfantom's avatar
paulfantom committed
                          type: boolean
                        storageMode:
                          default: ThinProvisioned
                          description: |-
                            storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
                            Default is ThinProvisioned.
paulfantom's avatar
paulfantom committed
                          type: string
                        storagePool:
                          description: storagePool is the ScaleIO Storage Pool associated with the protection domain.
paulfantom's avatar
paulfantom committed
                          type: string
                        system:
                          description: system is the name of the storage system as configured in ScaleIO.
paulfantom's avatar
paulfantom committed
                          type: string
                        volumeName:
                          description: |-
                            volumeName is the name of a volume already created in the ScaleIO system
                            that is associated with this volume source.
paulfantom's avatar
paulfantom committed
                          type: string
                      required:
                      - gateway
                      - secretRef
                      - system
                      type: object
                    secret:
                      description: |-
                        secret represents a secret that should populate this volume.
                        More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
paulfantom's avatar
paulfantom committed
                      properties:
                        defaultMode:
                          description: |-
                            defaultMode is Optional: mode bits used to set permissions on created files by default.
                            Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
                            YAML accepts both octal and decimal values, JSON requires decimal values
                            for mode bits. Defaults to 0644.
                            Directories within the path are not affected by this setting.
                            This might be in conflict with other options that affect the file
                            mode, like fsGroup, and the result can be other mode bits set.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        items:
                          description: |-
                            items If unspecified, each key-value pair in the Data field of the referenced
                            Secret will be projected into the volume as a file whose name is the
                            key and content is the value. If specified, the listed keys will be
                            projected into the specified paths, and unlisted keys will not be
                            present. If a key is specified which is not present in the Secret,
                            the volume setup will error unless it is marked optional. Paths must be
                            relative and may not contain the '..' path or start with '..'.
paulfantom's avatar
paulfantom committed
                          items:
                            description: Maps a string key to a path within a volume.
                            properties:
                              key:
                                description: key is the key to project.
paulfantom's avatar
paulfantom committed
                                type: string
                              mode:
                                description: |-
                                  mode is Optional: mode bits used to set permissions on this file.
                                  Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
                                  YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
                                  If not specified, the volume defaultMode will be used.
                                  This might be in conflict with other options that affect the file
                                  mode, like fsGroup, and the result can be other mode bits set.
paulfantom's avatar
paulfantom committed
                                format: int32
                                type: integer
                              path:
                                description: |-
                                  path is the relative path of the file to map the key to.
                                  May not be an absolute path.
                                  May not contain the path element '..'.
                                  May not start with the string '..'.
paulfantom's avatar
paulfantom committed
                                type: string
                            required:
                            - key
                            - path
                            type: object
                          type: array
                          x-kubernetes-list-type: atomic
paulfantom's avatar
paulfantom committed
                        optional:
                          description: optional field specify whether the Secret or its keys must be defined
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretName:
                          description: |-
                            secretName is the name of the secret in the pod's namespace to use.
                            More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
paulfantom's avatar
paulfantom committed
                          type: string
                      type: object
                    storageos:
                      description: |-
                        storageOS represents a StorageOS volume attached and mounted on Kubernetes nodes.
                        Deprecated: StorageOS is deprecated and the in-tree storageos type is no longer supported.
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: |-
                            fsType is the filesystem type to mount.
                            Must be a filesystem type supported by the host operating system.
                            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
paulfantom's avatar
paulfantom committed
                          type: string
                        readOnly:
                          description: |-
                            readOnly defaults to false (read/write). ReadOnly here will force
                            the ReadOnly setting in VolumeMounts.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        secretRef:
                          description: |-
                            secretRef specifies the secret to use for obtaining the StorageOS API
                            credentials.  If not specified, default values will be attempted.
paulfantom's avatar
paulfantom committed
                          properties:
                            name:
                              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
paulfantom's avatar
paulfantom committed
                              type: string
                          type: object
                          x-kubernetes-map-type: atomic
paulfantom's avatar
paulfantom committed
                        volumeName:
                          description: |-
                            volumeName is the human-readable name of the StorageOS volume.  Volume
                            names are only unique within a namespace.
paulfantom's avatar
paulfantom committed
                          type: string
                        volumeNamespace:
                          description: |-
                            volumeNamespace specifies the scope of the volume within StorageOS.  If no
                            namespace is specified then the Pod's namespace will be used.  This allows the
                            Kubernetes name scoping to be mirrored within StorageOS for tighter integration.
                            Set VolumeName to any name to override the default behaviour.
                            Set to "default" if you are not using namespaces within StorageOS.
                            Namespaces that do not pre-exist within StorageOS will be created.
paulfantom's avatar
paulfantom committed
                          type: string
                      type: object
                    vsphereVolume:
                      description: |-
                        vsphereVolume represents a vSphere volume attached and mounted on kubelets host machine.
                        Deprecated: VsphereVolume is deprecated. All operations for the in-tree vsphereVolume type
                        are redirected to the csi.vsphere.vmware.com CSI driver.
paulfantom's avatar
paulfantom committed
                      properties:
                        fsType:
                          description: |-
                            fsType is filesystem type to mount.
                            Must be a filesystem type supported by the host operating system.
                            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
paulfantom's avatar
paulfantom committed
                          type: string
                        storagePolicyID:
                          description: storagePolicyID is the storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName.
paulfantom's avatar
paulfantom committed
                          type: string
                        storagePolicyName:
                          description: storagePolicyName is the storage Policy Based Management (SPBM) profile name.
paulfantom's avatar
paulfantom committed
                          type: string
                        volumePath: