diff --git a/Makefile b/Makefile
index bcd173fa751..ed81faf5daf 100644
--- a/Makefile
+++ b/Makefile
@@ -331,7 +331,7 @@ docker-buildx-all-push: pre-setup ${DOCKER_BUILDX_PUSH}
# find or download controller-gen
# download controller-gen if necessary
-# controller-gen@v0.12.1 comply with k8s.io/api v0.26.x
+# controller-gen@v0.14.0 comply with k8s.io/api v0.29.x
controller-gen:
ifeq (, $(shell which controller-gen))
@{ \
@@ -340,7 +340,7 @@ ifeq (, $(shell which controller-gen))
cd $$CONTROLLER_GEN_TMP_DIR ;\
export GO111MODULE=on ;\
go mod init tmp ;\
- go install sigs.k8s.io/controller-tools/cmd/controller-gen@v0.12.1 ;\
+ go install sigs.k8s.io/controller-tools/cmd/controller-gen@v0.14.0 ;\
rm -rf $$CONTROLLER_GEN_TMP_DIR ;\
}
CONTROLLER_GEN=$(GOBIN)/controller-gen
diff --git a/api/v1alpha1/openapi_generated.go b/api/v1alpha1/openapi_generated.go
index ee6da1a58a5..14792912667 100644
--- a/api/v1alpha1/openapi_generated.go
+++ b/api/v1alpha1/openapi_generated.go
@@ -851,14 +851,12 @@ func schema_fluid_cloudnative_fluid_api_v1alpha1_Condition(ref common.ReferenceC
"lastProbeTime": {
SchemaProps: spec.SchemaProps{
Description: "LastProbeTime describes last time this condition was updated.",
- Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
},
},
"lastTransitionTime": {
SchemaProps: spec.SchemaProps{
Description: "LastTransitionTime describes last time the condition transitioned from one status to another.",
- Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
},
},
@@ -1846,14 +1844,12 @@ func schema_fluid_cloudnative_fluid_api_v1alpha1_DatasetCondition(ref common.Ref
"lastUpdateTime": {
SchemaProps: spec.SchemaProps{
Description: "The last time this condition was updated.",
- Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
},
},
"lastTransitionTime": {
SchemaProps: spec.SchemaProps{
Description: "Last time the condition transitioned from one status to another.",
- Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
},
},
@@ -5193,14 +5189,12 @@ func schema_fluid_cloudnative_fluid_api_v1alpha1_RuntimeCondition(ref common.Ref
"lastProbeTime": {
SchemaProps: spec.SchemaProps{
Description: "The last time this condition was updated.",
- Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
},
},
"lastTransitionTime": {
SchemaProps: spec.SchemaProps{
Description: "Last time the condition transitioned from one status to another.",
- Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
},
},
diff --git a/api/v1alpha1/zz_generated.deepcopy.go b/api/v1alpha1/zz_generated.deepcopy.go
index e1aae2528e6..d2644da21c3 100644
--- a/api/v1alpha1/zz_generated.deepcopy.go
+++ b/api/v1alpha1/zz_generated.deepcopy.go
@@ -1,5 +1,4 @@
//go:build !ignore_autogenerated
-// +build !ignore_autogenerated
/*
diff --git a/charts/fluid/fluid/crds/data.fluid.io_alluxioruntimes.yaml b/charts/fluid/fluid/crds/data.fluid.io_alluxioruntimes.yaml
index f218f09138e..43dc5c75e54 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_alluxioruntimes.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_alluxioruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: alluxioruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -65,14 +65,19 @@ spec:
description: AlluxioRuntime is the Schema for the alluxioruntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -148,37 +153,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -194,8 +206,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -204,10 +217,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -218,33 +232,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -266,8 +283,9 @@ spec:
type: integer
type: object
disablePrometheus:
- description: Disable monitoring for Alluxio Runtime Prometheus is
- enabled by default
+ description: |-
+ Disable monitoring for Alluxio Runtime
+ Prometheus is enabled by default
type: boolean
fuse:
description: The component spec of Alluxio Fuse
@@ -278,11 +296,12 @@ spec:
type: string
type: array
cleanPolicy:
- description: 'CleanPolicy decides when to clean Alluxio Fuse pods.
+ description: |-
+ CleanPolicy decides when to clean Alluxio Fuse pods.
Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once the fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnRuntimeDeleted'
+ OnDemand cleans fuse pod once the fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnRuntimeDeleted
type: string
env:
additionalProperties:
@@ -315,9 +334,9 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
podMetadata:
description: PodMetadata defines labels and annotations that will
@@ -337,30 +356,36 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for Alluxio System.
- Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for Alluxio System.
+ Refer to Alluxio Configuration Properties for more info
type: object
resources:
- description: Resources that will be requested by Alluxio Fuse.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by Alluxio Fuse.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -376,8 +401,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -386,10 +412,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -400,33 +427,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -435,12 +465,11 @@ spec:
type: array
type: object
hadoopConfig:
- description: Name of the configMap used to support HDFS configurations
- when using HDFS as Alluxio's UFS. The configMap must be in the same
- namespace with the AlluxioRuntime. The configMap should contain
- user-specific HDFS conf files in it. For now, only "hdfs-site.xml"
- and "core-site.xml" are supported. It must take the filename of
- the conf file as the key and content of the file as the value.
+ description: |-
+ Name of the configMap used to support HDFS configurations when using HDFS as Alluxio's UFS. The configMap
+ must be in the same namespace with the AlluxioRuntime. The configMap should contain user-specific HDFS conf files in it.
+ For now, only "hdfs-site.xml" and "core-site.xml" are supported. It must take the filename of the conf file as the key and content
+ of the file as the value.
type: string
initUsers:
description: The spec of init users
@@ -464,25 +493,31 @@ spec:
2.3.0-SNAPSHOT)
type: string
resources:
- description: Resources that will be requested by initialize the
- users for runtime.
Resources are not allowed for ephemeral
- containers. Ephemeral containers use spare resources already
- allocated to the pod.
+ description: |-
+ Resources that will be requested by initialize the users for runtime.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -498,8 +533,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -508,10 +544,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -569,37 +606,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -615,8 +659,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -625,10 +670,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -639,33 +685,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -727,37 +776,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -773,8 +829,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -783,10 +840,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -797,33 +855,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -846,25 +907,22 @@ spec:
properties:
gracePeriodSeconds:
default: 60
- description: Optional duration in seconds the cache needs
- to clean gracefully. May be decreased in delete runtime
- request. Value must be non-negative integer. The value zero
- indicates clean immediately via the timeout command (no
- opportunity to shut down). If this value is nil, the default
- grace period will be used instead. The grace period is the
- duration in seconds after the processes running in the pod
- are sent a termination signal and the time when the processes
- are forcibly halted with timeout command. Set this value
- longer than the expected cleanup time for your process.
+ description: |-
+ Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request.
+ Value must be non-negative integer. The value zero indicates clean immediately via the timeout
+ command (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with timeout command.
+ Set this value longer than the expected cleanup time for your process.
format: int32
type: integer
maxRetryAttempts:
default: 3
- description: Optional max retry Attempts when cleanCache function
- returns an error after execution, runtime attempts to run
- it three more times by default. With Maximum Retry Attempts,
- you can customize the maximum number of retries. This gives
- you the option to continue processing retries.
+ description: |-
+ Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts
+ to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number
+ of retries. This gives you the option to continue processing retries.
format: int32
type: integer
type: object
@@ -933,37 +991,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -979,8 +1044,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -989,10 +1055,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -1003,33 +1070,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -1055,9 +1125,9 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for Alluxio system.
Refer
- to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for Alluxio system.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
description: The replicas of the worker, need to be specified
@@ -1092,9 +1162,9 @@ spec:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -1111,71 +1181,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -1197,10 +1263,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -1210,9 +1276,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -1223,9 +1289,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -1243,8 +1309,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -1254,67 +1321,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -1324,30 +1396,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -1356,25 +1423,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1382,9 +1445,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -1398,45 +1462,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -1446,17 +1508,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -1486,16 +1546,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1506,10 +1563,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -1537,121 +1593,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1667,50 +1727,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1721,58 +1767,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1780,9 +1791,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1791,13 +1802,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1809,10 +1818,9 @@ spec:
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.
+ 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
@@ -1820,20 +1828,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1845,27 +1849,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1882,21 +1896,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -1905,28 +1918,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1935,23 +1947,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1964,9 +1976,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -1974,57 +1986,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -2037,54 +2047,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -2095,62 +2112,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -2158,39 +2172,45 @@ spec:
- targetPortal
type: object
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -2201,10 +2221,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -2218,15 +2238,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -2240,16 +2260,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -2258,24 +2275,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -2284,29 +2391,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2314,10 +2413,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -2358,20 +2457,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -2384,12 +2476,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -2423,19 +2512,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -2444,29 +2528,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2474,10 +2550,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -2490,32 +2566,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -2528,29 +2598,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -2561,60 +2632,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -2625,10 +2704,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -2639,21 +2719,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2662,8 +2741,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -2675,9 +2754,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -2685,34 +2764,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -2721,25 +2796,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2751,8 +2822,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2760,44 +2832,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2805,10 +2875,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -2829,9 +2899,9 @@ spec:
type: object
volumeType:
default: hostPath
- description: 'VolumeType is the volume type of the tier.
- Should be one of the three types: `hostPath`, `emptyDir`
- and `volumeTemplate`. If not set, defaults to hostPath.'
+ description: |-
+ VolumeType is the volume type of the tier. Should be one of the three types: `hostPath`, `emptyDir` and `volumeTemplate`.
+ If not set, defaults to hostPath.
enum:
- hostPath
- emptyDir
@@ -2849,34 +2919,36 @@ spec:
be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the readOnly
- setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent disk
- resource in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -2898,10 +2970,10 @@ spec:
storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -2910,8 +2982,9 @@ spec:
disk (only in managed availability set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -2922,8 +2995,9 @@ spec:
on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that contains
@@ -2941,8 +3015,9 @@ spec:
shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is a collection
- of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -2951,61 +3026,72 @@ spec:
rather than the full Ceph tree, default is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile is the
- path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is reference
- to the authentication secret for User, default is empty.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados user name,
- default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached and
- mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount. Must
- be a filesystem type supported by the host operating system.
- Examples: "ext4", "xfs", "ntfs". Implicitly inferred to
- be "ext4" if unspecified. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a secret
- object containing parameters used to connect to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume in cinder.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -3015,27 +3101,25 @@ spec:
this volume
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.'
+ 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.
format: int32
type: integer
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -3043,22 +3127,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3066,8 +3149,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap or its
@@ -3081,41 +3166,43 @@ spec:
feature).
properties:
driver:
- description: driver is the name of the CSI driver that handles
- this volume. Consult with your admin for the correct name
- as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs", "ntfs".
- If not provided, the empty value is passed to the associated
- CSI driver which will determine the default filesystem
- to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference to the
- secret object containing sensitive information to pass
- to the CSI driver to complete the CSI NodePublishVolume
- and NodeUnpublishVolume calls. This field is optional,
- and may be empty if no secret is required. If the secret
- object contains more than one secret, all secret references
- are passed.
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific properties
- that are passed to the CSI driver. Consult your driver's
- documentation for supported values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -3125,16 +3212,15 @@ spec:
that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created files
- by default. Must be a Optional: mode bits used to set
- permissions on created files by default. Must be an octal
- value between 0000 and 0777 or a decimal value between
- 0 and 511. YAML accepts both octal and decimal values,
- JSON requires decimal values for mode bits. Defaults to
- 0644. Directories within the path are not affected by
- this setting. This might be in conflict with other options
- that affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -3161,15 +3247,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -3180,10 +3264,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -3210,106 +3293,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory that
- shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage medium
- should back this directory. The default is "" which means
- to use the node''s default medium. Must be an empty string
- (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local storage
- required for this EmptyDir volume. The size limit is also
- applicable for memory medium. The maximum usage on memory
- medium EmptyDir would be the minimum value between the
- SizeLimit specified here and the sum of memory limits
- of all containers in a pod. The default is nil which means
- that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is handled
- by a cluster storage driver. The volume's lifecycle is tied
- to the pod that defines it - it will be created before the
- pod starts, and deleted when the pod is removed. \n Use this
- if: a) the volume is only needed while the pod runs, b) features
- of normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified through
- a storage class, and d) the storage driver supports dynamic
- volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource
- for more information on the connection between this volume
- type and PersistentVolumeClaim). \n Use PersistentVolumeClaim
- or one of the vendor-specific APIs for volumes that persist
- for longer than the lifecycle of an individual pod. \n Use
- CSI for light-weight local ephemeral volumes if the CSI driver
- is meant to be used that way - see the documentation of the
- driver for more information. \n A pod can use both types of
- ephemeral volumes and persistent volumes at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone PVC to
- provision the volume. The pod in which this EphemeralVolumeSource
- is embedded will be the owner of the PVC, i.e. the PVC
- will be deleted together with the pod. The name of the
- PVC will be `-` where `` is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too long). \n
- An existing PVC with that name that is not owned by the
- pod will *not* be used for the pod to avoid using an unrelated
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
volume by mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created PVC
- is meant to be used by the pod, the PVC has to updated
- with an owner reference to the pod once the pod exists.
- Normally this should not be necessary, but it may be useful
- when manually reconstructing a broken cluster. \n This
- field is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required, must
- not be nil."
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations that
- will be copied into the PVC when creating it. No other
- fields are allowed and will be rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into the PVC
- that gets created from this template. The same fields
- as in a PersistentVolumeClaim are also valid here.
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired access
- modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used to specify
- either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
- * An existing PVC (PersistentVolumeClaim) If the
- provisioner or an external controller can support
- the specified data source, it will create a new
- volume based on the contents of the specified
- data source. When the AnyVolumeDataSource feature
- gate is enabled, dataSource contents will be copied
- to dataSourceRef, and dataSourceRef contents will
- be copied to dataSource when dataSourceRef.namespace
- is not specified. If the namespace is specified,
- then dataSourceRef will not be copied to dataSource.'
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -3325,45 +3427,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the object
- from which to populate the volume with data, if
- a non-empty volume is desired. This may be any
- object from a non-empty API group (non core object)
- or a PersistentVolumeClaim object. When this field
- is specified, volume binding will only succeed
- if the type of the specified object matches some
- installed volume populator or dynamic provisioner.
- This field will replace the functionality of the
- dataSource field and as such if both fields are
- non-empty, they must have the same value. For
- backwards compatibility, when namespace isn''t
- specified in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the same value
- automatically if one of them is empty and the
- other is non-empty. When namespace is specified
- in dataSourceRef, dataSource isn''t set to the
- same value and must be empty. There are three
- important differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific types
- of objects, dataSourceRef allows any non-core
- object, as well as PersistentVolumeClaim objects.
- * While dataSource ignores disallowed values (dropping
- them), dataSourceRef preserves all values, and
- generates an error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using the
- namespace field of dataSourceRef requires the
- CrossNamespaceVolumeDataSource feature gate to
- be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -3374,53 +3467,23 @@ spec:
referenced
type: string
namespace:
- description: Namespace is the namespace of resource
- being referenced Note that when a namespace
- is specified, a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent namespace
- to allow that namespace's owner to accept
- the reference. See the ReferenceGrant documentation
- for details. (Alpha) This field requires the
- CrossNamespaceVolumeDataSource feature gate
- to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum resources
- the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to specify
- resource requirements that are lower than previous
- value but must still be higher than capacity recorded
- in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references one
- entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -3428,8 +3491,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -3438,12 +3502,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -3455,28 +3518,24 @@ spec:
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.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -3489,24 +3548,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name of the
- StorageClass required by the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type of volume
- is required by the claim. Value of Filesystem
- is implied when not included in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -3523,19 +3595,20 @@ spec:
pod.
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. TODO: how do we prevent errors in the
- filesystem from compromising the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target worldwide
@@ -3544,26 +3617,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide identifiers
- (wwids) Either wwids or combination of targetWWNs and
- lun must be set, but not both simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume resource
- that is provisioned/attached using an exec based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to use for
this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -3572,20 +3646,23 @@ spec:
command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -3598,9 +3675,9 @@ spec:
service being running
properties:
datasetName:
- description: datasetName is Name of the dataset stored as
- metadata -> name on the dataset for Flocker should be
- considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset. This
@@ -3608,52 +3685,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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.
+ 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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -3666,51 +3746,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use host directory
- mounts and who can/can not mount host directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults to "" More
- info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support iSCSI
@@ -3721,56 +3811,59 @@ spec:
Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name that uses
- an iSCSI transport. Defaults to 'default' (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI target
and initiator authentication
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -3778,43 +3871,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting in
- VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -3824,10 +3925,10 @@ spec:
persistent disk attached and mounted on kubelets host machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon Controller
@@ -3841,14 +3942,15 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx volume
@@ -3861,14 +3963,13 @@ spec:
configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -3877,22 +3978,113 @@ spec:
description: Projection that may be projected along with
other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the configMap
data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3901,25 +4093,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3927,10 +4115,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -3969,17 +4157,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -3991,10 +4175,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -4027,17 +4210,14 @@ spec:
to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -4046,25 +4226,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -4072,10 +4248,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether the
@@ -4088,29 +4264,26 @@ spec:
the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative to the
- mount point of the file to project the token
- into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -4123,28 +4296,30 @@ spec:
that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default is no
- group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte volume
- to be mounted with read-only permissions. Defaults to
- false.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults to serivceaccount
- user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references an already
@@ -4155,54 +4330,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More info:
- https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -4213,9 +4402,11 @@ spec:
attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the ScaleIO
@@ -4226,17 +4417,20 @@ spec:
Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -4245,8 +4439,8 @@ spec:
with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage for
- a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -4258,9 +4452,9 @@ spec:
configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume already
- created in the ScaleIO system that is associated with
- this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -4268,31 +4462,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should populate
- this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -4300,22 +4493,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -4327,8 +4519,9 @@ spec:
its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -4336,40 +4529,42 @@ spec:
and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use for obtaining
- the StorageOS API credentials. If not specified, default
- values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name of the
- StorageOS volume. Volume names are only unique within
- a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -4377,10 +4572,10 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy Based
@@ -4455,37 +4650,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -4501,8 +4703,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -4511,10 +4714,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -4525,33 +4729,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -4575,21 +4782,20 @@ spec:
affinity including node selector
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -4599,28 +4805,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4633,28 +4837,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4676,47 +4878,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4729,28 +4930,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4807,55 +5006,58 @@ spec:
type: object
type: array
currentFuseNumberScheduled:
- description: The total number of nodes that can be running the runtime
- Fuse pod (including nodes correctly running the runtime Fuse pod).
+ description: |-
+ The total number of nodes that can be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
currentMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
currentWorkerNumberScheduled:
- description: The total number of nodes that can be running the runtime
- worker pod (including nodes correctly running the runtime worker
- pod).
+ description: |-
+ The total number of nodes that can be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
desiredFuseNumberScheduled:
- description: The total number of nodes that should be running the
- runtime Fuse pod (including nodes correctly running the runtime
- Fuse pod).
+ description: |-
+ The total number of nodes that should be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
desiredMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
desiredWorkerNumberScheduled:
- description: The total number of nodes that should be running the
- runtime worker pod (including nodes correctly running the runtime
- worker pod).
+ description: |-
+ The total number of nodes that should be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
fuseNumberAvailable:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
+ description: |-
+ The number of nodes that should be running the
+ runtime Fuse pod and have one or more of the runtime Fuse pod running and
available (ready for at least spec.minReadySeconds)
format: int32
type: integer
fuseNumberReady:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
- ready.
+ description: |-
+ The number of nodes that should be running the runtime Fuse pod and have one
+ or more of the runtime Fuse pod running and ready.
format: int32
type: integer
fuseNumberUnavailable:
- description: The number of nodes that should be running the runtime
- fuse pod and have none of the runtime fuse pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime fuse pod and have none of the runtime fuse pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
@@ -4866,9 +5068,9 @@ spec:
description: Reason for the condition's last transition.
type: string
masterNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have zero or more of the runtime master pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have zero
+ or more of the runtime master pod running and ready.
format: int32
type: integer
masterPhase:
@@ -4878,16 +5080,18 @@ spec:
description: Reason for Master's condition transition
type: string
mountTime:
- description: MountTime represents time last mount happened if Mounttime
- is earlier than master starting time, remount will be required
+ description: |-
+ MountTime represents time last mount happened
+ if Mounttime is earlier than master starting time, remount will be required
format: date-time
type: string
mounts:
description: MountPoints represents the mount points specified in
the bounded dataset
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -4927,10 +5131,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -4956,20 +5161,22 @@ spec:
description: config map used to set configurations
type: string
workerNumberAvailable:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and available (ready for at least spec.minReadySeconds)
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have one or more of the runtime worker pod running and
+ available (ready for at least spec.minReadySeconds)
format: int32
type: integer
workerNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have one
+ or more of the runtime worker pod running and ready.
format: int32
type: integer
workerNumberUnavailable:
- description: The number of nodes that should be running the runtime
- worker pod and have none of the runtime worker pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have none of the runtime worker pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
diff --git a/charts/fluid/fluid/crds/data.fluid.io_databackups.yaml b/charts/fluid/fluid/crds/data.fluid.io_databackups.yaml
index 43ad761f5f3..e291f034300 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_databackups.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_databackups.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: databackups.data.fluid.io
spec:
group: data.fluid.io
@@ -43,14 +43,19 @@ spec:
description: DataBackup is the Schema for the backup API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -213,21 +218,20 @@ spec:
pods
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -237,28 +241,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -271,28 +273,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -314,47 +314,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -367,28 +366,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
diff --git a/charts/fluid/fluid/crds/data.fluid.io_dataloads.yaml b/charts/fluid/fluid/crds/data.fluid.io_dataloads.yaml
index a3b80ec1821..e94288da03c 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_dataloads.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_dataloads.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: dataloads.data.fluid.io
spec:
group: data.fluid.io
@@ -37,14 +37,19 @@ spec:
description: DataLoad is the Schema for the dataloads API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -59,22 +64,20 @@ spec:
pod.
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to
- nodes that satisfy the affinity expressions specified by
- this field, but it may choose a node that violates one or
- more of the expressions. The node that is most preferred
- is the one with the greatest sum of weights, i.e. for each
- node that meets all of the scheduling requirements (resource
- request, requiredDuringScheduling affinity expressions,
- etc.), compute a sum by iterating through the elements of
- this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the
- highest sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches
- all objects with implicit weight 0 (i.e. it's a no-op).
- A null preferred scheduling term matches no objects (i.e.
- is also a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the
@@ -84,30 +87,26 @@ spec:
description: A list of node selector requirements
by node's labels.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -120,30 +119,26 @@ spec:
description: A list of node selector requirements
by node's fields.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -165,50 +160,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this
- field are not met at scheduling time, the pod will not be
- scheduled onto the node. If the affinity requirements specified
- by this field cease to be met at some point during pod execution
- (e.g. due to an update), the system may or may not try to
- eventually evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms.
The terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The
- TopologySelectorTerm type implements a subset of the
- NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements
by node's labels.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -221,30 +212,26 @@ spec:
description: A list of node selector requirements
by node's fields.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -266,16 +253,15 @@ spec:
this pod in the same node, zone, etc. as some other pod(s)).
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to
- nodes that satisfy the affinity expressions specified by
- this field, but it may choose a node that violates one or
- more of the expressions. The node that is most preferred
- is the one with the greatest sum of weights, i.e. for each
- node that meets all of the scheduling requirements (resource
- request, requiredDuringScheduling affinity expressions,
- etc.), compute a sum by iterating through the elements of
- this field and adding "weight" to the sum if the node has
- pods which matches the corresponding podAffinityTerm; the
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
node(s) with the highest sum are the most preferred.
items:
description: The weights of all of the matched WeightedPodAffinityTerm
@@ -286,36 +272,33 @@ spec:
with the corresponding weight.
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -328,51 +311,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied
- to the union of the namespaces selected by this
- field and the ones listed in the namespaces field.
- null selector and null or empty namespaces list
- means "this pod's namespace". An empty selector
- ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -385,40 +391,37 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list
- of namespace names that the term applies to. The
- term is applied to the union of the namespaces
- listed in this field and the ones selected by
- namespaceSelector. null or empty namespaces list
- and null namespaceSelector means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods
- matching the labelSelector in the specified namespaces,
- where co-located is defined as running on a node
- whose value of the label with key topologyKey
- matches that of any node on which any of the selected
- pods is running. Empty topologyKey is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
type: object
weight:
- description: weight associated with matching the corresponding
- podAffinityTerm, in the range 1-100.
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
format: int32
type: integer
required:
@@ -427,52 +430,51 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this
- field are not met at scheduling time, the pod will not be
- scheduled onto the node. If the affinity requirements specified
- by this field cease to be met at some point during pod execution
- (e.g. due to a pod label update), the system may or may
- not try to eventually evict the pod from its node. When
- there are multiple elements, the lists of nodes corresponding
- to each podAffinityTerm are intersected, i.e. all terms
- must be satisfied.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
items:
- description: Defines a set of pods (namely those matching
- the labelSelector relative to the given namespace(s))
- that this pod should be co-located (affinity) or not co-located
- (anti-affinity) with, where co-located is defined as running
- on a node whose value of the label with key
- matches that of any node on which a pod of the set of
- pods is running
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -484,47 +486,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied to the
- union of the namespaces selected by this field and
- the ones listed in the namespaces field. null selector
- and null or empty namespaces list means "this pod's
- namespace". An empty selector ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -536,32 +565,28 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list of namespace
- names that the term applies to. The term is applied
- to the union of the namespaces listed in this field
- and the ones selected by namespaceSelector. null or
- empty namespaces list and null namespaceSelector means
- "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods matching
- the labelSelector in the specified namespaces, where
- co-located is defined as running on a node whose value
- of the label with key topologyKey matches that of
- any node on which any of the selected pods is running.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
Empty topologyKey is not allowed.
type: string
required:
@@ -575,16 +600,15 @@ spec:
other pod(s)).
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to
- nodes that satisfy the anti-affinity expressions specified
- by this field, but it may choose a node that violates one
- or more of the expressions. The node that is most preferred
- is the one with the greatest sum of weights, i.e. for each
- node that meets all of the scheduling requirements (resource
- request, requiredDuringScheduling anti-affinity expressions,
- etc.), compute a sum by iterating through the elements of
- this field and adding "weight" to the sum if the node has
- pods which matches the corresponding podAffinityTerm; the
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
node(s) with the highest sum are the most preferred.
items:
description: The weights of all of the matched WeightedPodAffinityTerm
@@ -595,36 +619,33 @@ spec:
with the corresponding weight.
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -637,51 +658,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied
- to the union of the namespaces selected by this
- field and the ones listed in the namespaces field.
- null selector and null or empty namespaces list
- means "this pod's namespace". An empty selector
- ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -694,40 +738,37 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list
- of namespace names that the term applies to. The
- term is applied to the union of the namespaces
- listed in this field and the ones selected by
- namespaceSelector. null or empty namespaces list
- and null namespaceSelector means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods
- matching the labelSelector in the specified namespaces,
- where co-located is defined as running on a node
- whose value of the label with key topologyKey
- matches that of any node on which any of the selected
- pods is running. Empty topologyKey is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
type: object
weight:
- description: weight associated with matching the corresponding
- podAffinityTerm, in the range 1-100.
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
format: int32
type: integer
required:
@@ -736,52 +777,51 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the anti-affinity requirements specified by
- this field are not met at scheduling time, the pod will
- not be scheduled onto the node. If the anti-affinity requirements
- specified by this field cease to be met at some point during
- pod execution (e.g. due to a pod label update), the system
- may or may not try to eventually evict the pod from its
- node. When there are multiple elements, the lists of nodes
- corresponding to each podAffinityTerm are intersected, i.e.
- all terms must be satisfied.
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
items:
- description: Defines a set of pods (namely those matching
- the labelSelector relative to the given namespace(s))
- that this pod should be co-located (affinity) or not co-located
- (anti-affinity) with, where co-located is defined as running
- on a node whose value of the label with key
- matches that of any node on which a pod of the set of
- pods is running
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -793,47 +833,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied to the
- union of the namespaces selected by this field and
- the ones listed in the namespaces field. null selector
- and null or empty namespaces list means "this pod's
- namespace". An empty selector ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -845,32 +912,28 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list of namespace
- names that the term applies to. The term is applied
- to the union of the namespaces listed in this field
- and the ones selected by namespaceSelector. null or
- empty namespaces list and null namespaceSelector means
- "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods matching
- the labelSelector in the specified namespaces, where
- co-located is defined as running on a node whose value
- of the label with key topologyKey matches that of
- any node on which any of the selected pods is running.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
Empty topologyKey is not allowed.
type: string
required:
@@ -933,18 +996,24 @@ spec:
properties:
claims:
- description: "Claims lists the names of resources, defined in
- spec.resourceClaims, that are used by this container. \n This
- is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be set
- for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in pod.spec.resourceClaims
- of the Pod where this field is used. It makes that resource
- available inside a container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -960,8 +1029,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute resources
- allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -970,10 +1040,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
runAfter:
@@ -1062,40 +1133,39 @@ spec:
tolerations:
description: Tolerations defines tolerations for DataLoad pod
items:
- description: The pod this Toleration is attached to tolerates any
- taint that matches the triple using the matching
- operator .
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
properties:
effect:
- description: Effect indicates the taint effect to match. Empty
- means match all taint effects. When specified, allowed values
- are NoSchedule, PreferNoSchedule and NoExecute.
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
type: string
key:
- description: Key is the taint key that the toleration applies
- to. Empty means match all taint keys. If the key is empty,
- operator must be Exists; this combination means to match all
- values and all keys.
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
type: string
operator:
- description: Operator represents a key's relationship to the
- value. Valid operators are Exists and Equal. Defaults to Equal.
- Exists is equivalent to wildcard for value, so that a pod
- can tolerate all taints of a particular category.
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
type: string
tolerationSeconds:
- description: TolerationSeconds represents the period of time
- the toleration (which must be of effect NoExecute, otherwise
- this field is ignored) tolerates the taint. By default, it
- is not set, which means tolerate the taint forever (do not
- evict). Zero and negative values will be treated as 0 (evict
- immediately) by the system.
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
format: int64
type: integer
value:
- description: Value is the taint value the toleration matches
- to. If the operator is Exists, the value should be empty,
- otherwise just a regular string.
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
type: string
type: object
type: array
@@ -1166,21 +1236,20 @@ spec:
pods
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -1190,28 +1259,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -1224,28 +1291,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -1267,47 +1332,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -1320,28 +1384,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
diff --git a/charts/fluid/fluid/crds/data.fluid.io_datamigrates.yaml b/charts/fluid/fluid/crds/data.fluid.io_datamigrates.yaml
index 73b83fc6b21..15da9888e90 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_datamigrates.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_datamigrates.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: datamigrates.data.fluid.io
spec:
group: data.fluid.io
@@ -34,14 +34,19 @@ spec:
description: DataMigrate is the Schema for the datamigrates API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -56,22 +61,20 @@ spec:
pod.
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to
- nodes that satisfy the affinity expressions specified by
- this field, but it may choose a node that violates one or
- more of the expressions. The node that is most preferred
- is the one with the greatest sum of weights, i.e. for each
- node that meets all of the scheduling requirements (resource
- request, requiredDuringScheduling affinity expressions,
- etc.), compute a sum by iterating through the elements of
- this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the
- highest sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches
- all objects with implicit weight 0 (i.e. it's a no-op).
- A null preferred scheduling term matches no objects (i.e.
- is also a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the
@@ -81,30 +84,26 @@ spec:
description: A list of node selector requirements
by node's labels.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -117,30 +116,26 @@ spec:
description: A list of node selector requirements
by node's fields.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -162,50 +157,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this
- field are not met at scheduling time, the pod will not be
- scheduled onto the node. If the affinity requirements specified
- by this field cease to be met at some point during pod execution
- (e.g. due to an update), the system may or may not try to
- eventually evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms.
The terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The
- TopologySelectorTerm type implements a subset of the
- NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements
by node's labels.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -218,30 +209,26 @@ spec:
description: A list of node selector requirements
by node's fields.
items:
- description: A node selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector
applies to.
type: string
operator:
- description: Represents a key's relationship
- to a set of values. Valid operators are
- In, NotIn, Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If
- the operator is In or NotIn, the values
- array must be non-empty. If the operator
- is Exists or DoesNotExist, the values array
- must be empty. If the operator is Gt or
- Lt, the values array must have a single
- element, which will be interpreted as an
- integer. This array is replaced during a
- strategic merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -263,16 +250,15 @@ spec:
this pod in the same node, zone, etc. as some other pod(s)).
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to
- nodes that satisfy the affinity expressions specified by
- this field, but it may choose a node that violates one or
- more of the expressions. The node that is most preferred
- is the one with the greatest sum of weights, i.e. for each
- node that meets all of the scheduling requirements (resource
- request, requiredDuringScheduling affinity expressions,
- etc.), compute a sum by iterating through the elements of
- this field and adding "weight" to the sum if the node has
- pods which matches the corresponding podAffinityTerm; the
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
node(s) with the highest sum are the most preferred.
items:
description: The weights of all of the matched WeightedPodAffinityTerm
@@ -283,36 +269,33 @@ spec:
with the corresponding weight.
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -325,51 +308,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied
- to the union of the namespaces selected by this
- field and the ones listed in the namespaces field.
- null selector and null or empty namespaces list
- means "this pod's namespace". An empty selector
- ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -382,40 +388,37 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list
- of namespace names that the term applies to. The
- term is applied to the union of the namespaces
- listed in this field and the ones selected by
- namespaceSelector. null or empty namespaces list
- and null namespaceSelector means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods
- matching the labelSelector in the specified namespaces,
- where co-located is defined as running on a node
- whose value of the label with key topologyKey
- matches that of any node on which any of the selected
- pods is running. Empty topologyKey is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
type: object
weight:
- description: weight associated with matching the corresponding
- podAffinityTerm, in the range 1-100.
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
format: int32
type: integer
required:
@@ -424,52 +427,51 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this
- field are not met at scheduling time, the pod will not be
- scheduled onto the node. If the affinity requirements specified
- by this field cease to be met at some point during pod execution
- (e.g. due to a pod label update), the system may or may
- not try to eventually evict the pod from its node. When
- there are multiple elements, the lists of nodes corresponding
- to each podAffinityTerm are intersected, i.e. all terms
- must be satisfied.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
items:
- description: Defines a set of pods (namely those matching
- the labelSelector relative to the given namespace(s))
- that this pod should be co-located (affinity) or not co-located
- (anti-affinity) with, where co-located is defined as running
- on a node whose value of the label with key
- matches that of any node on which a pod of the set of
- pods is running
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -481,47 +483,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied to the
- union of the namespaces selected by this field and
- the ones listed in the namespaces field. null selector
- and null or empty namespaces list means "this pod's
- namespace". An empty selector ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -533,32 +562,28 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list of namespace
- names that the term applies to. The term is applied
- to the union of the namespaces listed in this field
- and the ones selected by namespaceSelector. null or
- empty namespaces list and null namespaceSelector means
- "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods matching
- the labelSelector in the specified namespaces, where
- co-located is defined as running on a node whose value
- of the label with key topologyKey matches that of
- any node on which any of the selected pods is running.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
Empty topologyKey is not allowed.
type: string
required:
@@ -572,16 +597,15 @@ spec:
other pod(s)).
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to
- nodes that satisfy the anti-affinity expressions specified
- by this field, but it may choose a node that violates one
- or more of the expressions. The node that is most preferred
- is the one with the greatest sum of weights, i.e. for each
- node that meets all of the scheduling requirements (resource
- request, requiredDuringScheduling anti-affinity expressions,
- etc.), compute a sum by iterating through the elements of
- this field and adding "weight" to the sum if the node has
- pods which matches the corresponding podAffinityTerm; the
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
node(s) with the highest sum are the most preferred.
items:
description: The weights of all of the matched WeightedPodAffinityTerm
@@ -592,36 +616,33 @@ spec:
with the corresponding weight.
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -634,51 +655,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied
- to the union of the namespaces selected by this
- field and the ones listed in the namespaces field.
- null selector and null or empty namespaces list
- means "this pod's namespace". An empty selector
- ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are
ANDed.
items:
- description: A label selector requirement
- is a selector that contains values, a key,
- and an operator that relates the key and
- values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -691,40 +735,37 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list
- of namespace names that the term applies to. The
- term is applied to the union of the namespaces
- listed in this field and the ones selected by
- namespaceSelector. null or empty namespaces list
- and null namespaceSelector means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods
- matching the labelSelector in the specified namespaces,
- where co-located is defined as running on a node
- whose value of the label with key topologyKey
- matches that of any node on which any of the selected
- pods is running. Empty topologyKey is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
type: object
weight:
- description: weight associated with matching the corresponding
- podAffinityTerm, in the range 1-100.
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
format: int32
type: integer
required:
@@ -733,52 +774,51 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the anti-affinity requirements specified by
- this field are not met at scheduling time, the pod will
- not be scheduled onto the node. If the anti-affinity requirements
- specified by this field cease to be met at some point during
- pod execution (e.g. due to a pod label update), the system
- may or may not try to eventually evict the pod from its
- node. When there are multiple elements, the lists of nodes
- corresponding to each podAffinityTerm are intersected, i.e.
- all terms must be satisfied.
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
items:
- description: Defines a set of pods (namely those matching
- the labelSelector relative to the given namespace(s))
- that this pod should be co-located (affinity) or not co-located
- (anti-affinity) with, where co-located is defined as running
- on a node whose value of the label with key
- matches that of any node on which a pod of the set of
- pods is running
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
properties:
labelSelector:
- description: A label query over a set of resources,
- in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -790,47 +830,74 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set of namespaces
- that the term applies to. The term is applied to the
- union of the namespaces selected by this field and
- the ones listed in the namespaces field. null selector
- and null or empty namespaces list means "this pod's
- namespace". An empty selector ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list of label
selector requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a
- selector that contains values, a key, and an
- operator that relates the key and values.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty. If the
- operator is Exists or DoesNotExist, the
- values array must be empty. This array is
- replaced during a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -842,32 +909,28 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static list of namespace
- names that the term applies to. The term is applied
- to the union of the namespaces listed in this field
- and the ones selected by namespaceSelector. null or
- empty namespaces list and null namespaceSelector means
- "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located (affinity)
- or not co-located (anti-affinity) with the pods matching
- the labelSelector in the specified namespaces, where
- co-located is defined as running on a node whose value
- of the label with key topologyKey matches that of
- any node on which any of the selected pods is running.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
Empty topologyKey is not allowed.
type: string
required:
@@ -965,9 +1028,9 @@ spec:
type: object
parallelism:
default: 1
- description: Parallelism defines the parallelism tasks numbers for
- DataMigrate. If the value is greater than 1, the job acts as a launcher,
- and users should define the WorkerSpec.
+ description: |-
+ Parallelism defines the parallelism tasks numbers for DataMigrate. If the value is greater than 1, the job acts
+ as a launcher, and users should define the WorkerSpec.
format: int32
minimum: 1
type: integer
@@ -999,18 +1062,24 @@ spec:
properties:
claims:
- description: "Claims lists the names of resources, defined in
- spec.resourceClaims, that are used by this container. \n This
- is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be set
- for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in pod.spec.resourceClaims
- of the Pod where this field is used. It makes that resource
- available inside a container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -1026,8 +1095,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute resources
- allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1036,10 +1106,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
runAfter:
@@ -1174,40 +1245,39 @@ spec:
tolerations:
description: Tolerations defines tolerations for DataMigrate pod
items:
- description: The pod this Toleration is attached to tolerates any
- taint that matches the triple using the matching
- operator .
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
properties:
effect:
- description: Effect indicates the taint effect to match. Empty
- means match all taint effects. When specified, allowed values
- are NoSchedule, PreferNoSchedule and NoExecute.
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
type: string
key:
- description: Key is the taint key that the toleration applies
- to. Empty means match all taint keys. If the key is empty,
- operator must be Exists; this combination means to match all
- values and all keys.
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
type: string
operator:
- description: Operator represents a key's relationship to the
- value. Valid operators are Exists and Equal. Defaults to Equal.
- Exists is equivalent to wildcard for value, so that a pod
- can tolerate all taints of a particular category.
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
type: string
tolerationSeconds:
- description: TolerationSeconds represents the period of time
- the toleration (which must be of effect NoExecute, otherwise
- this field is ignored) tolerates the taint. By default, it
- is not set, which means tolerate the taint forever (do not
- evict). Zero and negative values will be treated as 0 (evict
- immediately) by the system.
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
format: int64
type: integer
value:
- description: Value is the taint value the toleration matches
- to. If the operator is Exists, the value should be empty,
- otherwise just a regular string.
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
type: string
type: object
type: array
@@ -1281,21 +1351,20 @@ spec:
pods
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -1305,28 +1374,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -1339,28 +1406,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -1382,47 +1447,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -1435,28 +1499,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
diff --git a/charts/fluid/fluid/crds/data.fluid.io_dataprocesses.yaml b/charts/fluid/fluid/crds/data.fluid.io_dataprocesses.yaml
index e7494d6b48b..38e9fd1f166 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_dataprocesses.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_dataprocesses.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: dataprocesses.data.fluid.io
spec:
group: data.fluid.io
@@ -33,14 +33,19 @@ spec:
description: DataProcess is the Schema for the dataprocesses API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -80,10 +85,10 @@ spec:
job.
properties:
activeDeadlineSeconds:
- description: Optional duration in seconds the pod may
- be active on the node relative to StartTime before the
- system will actively try to mark it failed and kill
- associated containers. Value must be a positive integer.
+ description: |-
+ Optional duration in seconds the pod may be active on the node relative to
+ StartTime before the system will actively try to mark it failed and kill associated containers.
+ Value must be a positive integer.
format: int64
type: integer
affinity:
@@ -94,24 +99,20 @@ spec:
for the pod.
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule
- pods to nodes that satisfy the affinity expressions
- specified by this field, but it may choose a
- node that violates one or more of the expressions.
- The node that is most preferred is the one with
- the greatest sum of weights, i.e. for each node
- that meets all of the scheduling requirements
- (resource request, requiredDuringScheduling
- affinity expressions, etc.), compute a sum by
- iterating through the elements of this field
- and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s)
- with the highest sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term
- matches all objects with implicit weight 0
- (i.e. it's a no-op). A null preferred scheduling
- term matches no objects (i.e. is also a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated
@@ -121,35 +122,26 @@ spec:
description: A list of node selector
requirements by node's labels.
items:
- description: A node selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
- description: Represents a key's
- relationship to a set of values.
- Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string
- values. If the operator is In
- or NotIn, the values array must
- be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- If the operator is Gt or Lt,
- the values array must have a
- single element, which will be
- interpreted as an integer. This
- array is replaced during a strategic
- merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -162,35 +154,26 @@ spec:
description: A list of node selector
requirements by node's fields.
items:
- description: A node selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
- description: Represents a key's
- relationship to a set of values.
- Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string
- values. If the operator is In
- or NotIn, the values array must
- be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- If the operator is Gt or Lt,
- the values array must have a
- single element, which will be
- interpreted as an integer. This
- array is replaced during a strategic
- merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -213,57 +196,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified
- by this field are not met at scheduling time,
- the pod will not be scheduled onto the node.
- If the affinity requirements specified by this
- field cease to be met at some point during pod
- execution (e.g. due to an update), the system
- may or may not try to eventually evict the pod
- from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector
terms. The terms are ORed.
items:
- description: A null or empty node selector
- term matches no objects. The requirements
- of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
- description: A node selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
- description: Represents a key's
- relationship to a set of values.
- Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string
- values. If the operator is In
- or NotIn, the values array must
- be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- If the operator is Gt or Lt,
- the values array must have a
- single element, which will be
- interpreted as an integer. This
- array is replaced during a strategic
- merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -276,35 +248,26 @@ spec:
description: A list of node selector
requirements by node's fields.
items:
- description: A node selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
- description: Represents a key's
- relationship to a set of values.
- Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and
- Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string
- values. If the operator is In
- or NotIn, the values array must
- be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- If the operator is Gt or Lt,
- the values array must have a
- single element, which will be
- interpreted as an integer. This
- array is replaced during a strategic
- merge patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -327,20 +290,16 @@ spec:
etc. as some other pod(s)).
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule
- pods to nodes that satisfy the affinity expressions
- specified by this field, but it may choose a
- node that violates one or more of the expressions.
- The node that is most preferred is the one with
- the greatest sum of weights, i.e. for each node
- that meets all of the scheduling requirements
- (resource request, requiredDuringScheduling
- affinity expressions, etc.), compute a sum by
- iterating through the elements of this field
- and adding "weight" to the sum if the node has
- pods which matches the corresponding podAffinityTerm;
- the node(s) with the highest sum are the most
- preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
items:
description: The weights of all of the matched
WeightedPodAffinityTerm fields are added per-node
@@ -351,19 +310,18 @@ spec:
associated with the corresponding weight.
properties:
labelSelector:
- description: A label query over a set
- of resources, in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is
a list of label selector requirements.
The requirements are ANDed.
items:
- description: A label selector
- requirement is a selector that
- contains values, a key, and
- an operator that relates the
- key and values.
+ 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
@@ -371,23 +329,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an
- array of string values.
- If the operator is In or
- NotIn, the values array
- must be non-empty. If the
- operator is Exists or DoesNotExist,
- the values array must be
- empty. This array is replaced
- during a strategic merge
- patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -399,39 +350,59 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the
- set of namespaces that the term applies
- to. The term is applied to the union
- of the namespaces selected by this
- field and the ones listed in the namespaces
- field. null selector and null or empty
- namespaces list means "this pod's
- namespace". An empty selector ({})
- matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is
a list of label selector requirements.
The requirements are ANDed.
items:
- description: A label selector
- requirement is a selector that
- contains values, a key, and
- an operator that relates the
- key and values.
+ 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
@@ -439,23 +410,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an
- array of string values.
- If the operator is In or
- NotIn, the values array
- must be non-empty. If the
- operator is Exists or DoesNotExist,
- the values array must be
- empty. This array is replaced
- during a strategic merge
- patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -467,49 +431,37 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a
- static list of namespace names that
- the term applies to. The term is applied
- to the union of the namespaces listed
- in this field and the ones selected
- by namespaceSelector. null or empty
- namespaces list and null namespaceSelector
- means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located
- (affinity) or not co-located (anti-affinity)
- with the pods matching the labelSelector
- in the specified namespaces, where
- co-located is defined as running on
- a node whose value of the label with
- key topologyKey matches that of any
- node on which any of the selected
- pods is running. Empty topologyKey
- is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
type: object
weight:
- description: weight associated with matching
- the corresponding podAffinityTerm, in
- the range 1-100.
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
format: int32
type: integer
required:
@@ -518,40 +470,36 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified
- by this field are not met at scheduling time,
- the pod will not be scheduled onto the node.
- If the affinity requirements specified by this
- field cease to be met at some point during pod
- execution (e.g. due to a pod label update),
- the system may or may not try to eventually
- evict the pod from its node. When there are
- multiple elements, the lists of nodes corresponding
- to each podAffinityTerm are intersected, i.e.
- all terms must be satisfied.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
items:
- description: Defines a set of pods (namely those
- matching the labelSelector relative to the
- given namespace(s)) that this pod should be
- co-located (affinity) or not co-located (anti-affinity)
- with, where co-located is defined as running
- on a node whose value of the label with key
- matches that of any node on
- which a pod of the set of pods is running
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
properties:
labelSelector:
- description: A label query over a set of
- resources, in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list
of label selector requirements. The
requirements are ANDed.
items:
- description: A label selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ 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
@@ -559,20 +507,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -584,36 +528,59 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set
- of namespaces that the term applies to.
- The term is applied to the union of the
- namespaces selected by this field and
- the ones listed in the namespaces field.
- null selector and null or empty namespaces
- list means "this pod's namespace". An
- empty selector ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list
of label selector requirements. The
requirements are ANDed.
items:
- description: A label selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ 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
@@ -621,20 +588,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -646,38 +609,29 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static
- list of namespace names that the term
- applies to. The term is applied to the
- union of the namespaces listed in this
- field and the ones selected by namespaceSelector.
- null or empty namespaces list and null
- namespaceSelector means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located
- (affinity) or not co-located (anti-affinity)
- with the pods matching the labelSelector
- in the specified namespaces, where co-located
- is defined as running on a node whose
- value of the label with key topologyKey
- matches that of any node on which any
- of the selected pods is running. Empty
- topologyKey is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
@@ -690,20 +644,16 @@ spec:
zone, etc. as some other pod(s)).
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule
- pods to nodes that satisfy the anti-affinity
- expressions specified by this field, but it
- may choose a node that violates one or more
- of the expressions. The node that is most preferred
- is the one with the greatest sum of weights,
- i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling
- anti-affinity expressions, etc.), compute a
- sum by iterating through the elements of this
- field and adding "weight" to the sum if the
- node has pods which matches the corresponding
- podAffinityTerm; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
items:
description: The weights of all of the matched
WeightedPodAffinityTerm fields are added per-node
@@ -714,19 +664,18 @@ spec:
associated with the corresponding weight.
properties:
labelSelector:
- description: A label query over a set
- of resources, in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is
a list of label selector requirements.
The requirements are ANDed.
items:
- description: A label selector
- requirement is a selector that
- contains values, a key, and
- an operator that relates the
- key and values.
+ 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
@@ -734,23 +683,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an
- array of string values.
- If the operator is In or
- NotIn, the values array
- must be non-empty. If the
- operator is Exists or DoesNotExist,
- the values array must be
- empty. This array is replaced
- during a strategic merge
- patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -762,39 +704,59 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the
- set of namespaces that the term applies
- to. The term is applied to the union
- of the namespaces selected by this
- field and the ones listed in the namespaces
- field. null selector and null or empty
- namespaces list means "this pod's
- namespace". An empty selector ({})
- matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is
a list of label selector requirements.
The requirements are ANDed.
items:
- description: A label selector
- requirement is a selector that
- contains values, a key, and
- an operator that relates the
- key and values.
+ 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
@@ -802,23 +764,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an
- array of string values.
- If the operator is In or
- NotIn, the values array
- must be non-empty. If the
- operator is Exists or DoesNotExist,
- the values array must be
- empty. This array is replaced
- during a strategic merge
- patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -830,49 +785,37 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a
- static list of namespace names that
- the term applies to. The term is applied
- to the union of the namespaces listed
- in this field and the ones selected
- by namespaceSelector. null or empty
- namespaces list and null namespaceSelector
- means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located
- (affinity) or not co-located (anti-affinity)
- with the pods matching the labelSelector
- in the specified namespaces, where
- co-located is defined as running on
- a node whose value of the label with
- key topologyKey matches that of any
- node on which any of the selected
- pods is running. Empty topologyKey
- is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
type: object
weight:
- description: weight associated with matching
- the corresponding podAffinityTerm, in
- the range 1-100.
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
format: int32
type: integer
required:
@@ -881,40 +824,36 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the anti-affinity requirements
- specified by this field are not met at scheduling
- time, the pod will not be scheduled onto the
- node. If the anti-affinity requirements specified
- by this field cease to be met at some point
- during pod execution (e.g. due to a pod label
- update), the system may or may not try to eventually
- evict the pod from its node. When there are
- multiple elements, the lists of nodes corresponding
- to each podAffinityTerm are intersected, i.e.
- all terms must be satisfied.
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
items:
- description: Defines a set of pods (namely those
- matching the labelSelector relative to the
- given namespace(s)) that this pod should be
- co-located (affinity) or not co-located (anti-affinity)
- with, where co-located is defined as running
- on a node whose value of the label with key
- matches that of any node on
- which a pod of the set of pods is running
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
properties:
labelSelector:
- description: A label query over a set of
- resources, in this case pods.
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
properties:
matchExpressions:
description: matchExpressions is a list
of label selector requirements. The
requirements are ANDed.
items:
- description: A label selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ 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
@@ -922,20 +861,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -947,36 +882,59 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ Also, MatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.
+ Also, MismatchLabelKeys cannot be set when LabelSelector isn't set.
+ This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
- description: A label query over the set
- of namespaces that the term applies to.
- The term is applied to the union of the
- namespaces selected by this field and
- the ones listed in the namespaces field.
- null selector and null or empty namespaces
- list means "this pod's namespace". An
- empty selector ({}) matches all namespaces.
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
properties:
matchExpressions:
description: matchExpressions is a list
of label selector requirements. The
requirements are ANDed.
items:
- description: A label selector requirement
- is a selector that contains values,
- a key, and an operator that relates
- the key and values.
+ 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
@@ -984,20 +942,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1009,38 +963,29 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
namespaces:
- description: namespaces specifies a static
- list of namespace names that the term
- applies to. The term is applied to the
- union of the namespaces listed in this
- field and the ones selected by namespaceSelector.
- null or empty namespaces list and null
- namespaceSelector means "this pod's namespace".
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
items:
type: string
type: array
topologyKey:
- description: This pod should be co-located
- (affinity) or not co-located (anti-affinity)
- with the pods matching the labelSelector
- in the specified namespaces, where co-located
- is defined as running on a node whose
- value of the label with key topologyKey
- matches that of any node on which any
- of the selected pods is running. Empty
- topologyKey is not allowed.
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
type: string
required:
- topologyKey
@@ -1053,47 +998,45 @@ spec:
a service account token should be automatically mounted.
type: boolean
containers:
- description: List of containers belonging to the pod.
- Containers cannot currently be added or removed. There
- must be at least one container in a Pod. Cannot be updated.
+ description: |-
+ List of containers belonging to the pod.
+ Containers cannot currently be added or removed.
+ There must be at least one container in a Pod.
+ Cannot be updated.
items:
description: A single application container that you
want to run within a pod.
properties:
args:
- description: 'Arguments to the entrypoint. The container
- image''s CMD is used if this is not provided.
- Variable references $(VAR_NAME) are expanded using
- the container''s environment. If a variable cannot
- be resolved, the reference in the input string
- will be unchanged. Double $$ are reduced to a
- single $, which allows for escaping the $(VAR_NAME)
- syntax: i.e. "$$(VAR_NAME)" will produce the string
- literal "$(VAR_NAME)". Escaped references will
- never be expanded, regardless of whether the variable
- exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
items:
type: string
type: array
command:
- description: 'Entrypoint array. Not executed within
- a shell. The container image''s ENTRYPOINT is
- used if this is not provided. Variable references
- $(VAR_NAME) are expanded using the container''s
- environment. If a variable cannot be resolved,
- the reference in the input string will be unchanged.
- Double $$ are reduced to a single $, which allows
- for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)"
- will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Cannot
- be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
items:
type: string
type: array
env:
- description: List of environment variables to set
- in the container. Cannot be updated.
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
items:
description: EnvVar represents an environment
variable present in a Container.
@@ -1103,18 +1046,16 @@ spec:
Must be a C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME)
- are expanded using the previously defined
- environment variables in the container and
- any service environment variables. If a
- variable cannot be resolved, the reference
- in the input string will be unchanged. Double
- $$ are reduced to a single $, which allows
- for escaping the $(VAR_NAME) syntax: i.e.
- "$$(VAR_NAME)" will produce the string literal
- "$(VAR_NAME)". Escaped references will never
- be expanded, regardless of whether the variable
- exists or not. Defaults to "".'
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's
@@ -1127,10 +1068,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1141,11 +1082,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod:
- supports metadata.name, metadata.namespace,
- `metadata.labels['''']`, `metadata.annotations['''']`,
- spec.nodeName, spec.serviceAccountName,
- status.hostIP, status.podIP, status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema
@@ -1161,12 +1100,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the
- container: only resources limits and
- requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu,
- requests.memory and requests.ephemeral-storage)
- are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -1199,10 +1135,10 @@ spec:
secret key.
type: string
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1218,15 +1154,13 @@ spec:
type: object
type: array
envFrom:
- description: List of sources to populate environment
- variables in the container. The keys defined within
- a source must be a C_IDENTIFIER. All invalid keys
- will be reported as an event when the container
- is starting. When a key exists in multiple sources,
- the value associated with the last source will
- take precedence. Values defined by an Env with
- a duplicate key will take precedence. Cannot be
- updated.
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
items:
description: EnvFromSource represents the source
of a set of ConfigMaps
@@ -1235,10 +1169,10 @@ spec:
description: The ConfigMap to select from
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1255,10 +1189,10 @@ spec:
description: The Secret to select from
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1269,46 +1203,43 @@ spec:
type: object
type: array
image:
- description: 'Container image name. 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.'
+ description: |-
+ Container image name.
+ 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
imagePullPolicy:
- description: 'Image pull policy. One of Always,
- Never, IfNotPresent. Defaults to Always if :latest
- tag is specified, or IfNotPresent otherwise. Cannot
- be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images'
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
type: string
lifecycle:
- description: Actions that the management system
- should take in response to container lifecycle
- events. Cannot be updated.
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
properties:
postStart:
- description: 'PostStart is called immediately
- after a container is created. If the handler
- fails, the container is terminated and restarted
- according to its restart policy. Other management
- of the container blocks until the hook completes.
- More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
properties:
exec:
description: Exec specifies the action to
take.
properties:
command:
- description: Command is the command
- line to execute inside the container,
- the working directory for the command is
- root ('/') in the container's filesystem.
- The command is simply exec'd, it is
- not run inside a shell, so traditional
- shell instructions ('|', etc) won't
- work. To use a shell, you need to
- explicitly call out to that shell.
- Exit status of 0 is treated as live/healthy
- and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
@@ -1318,10 +1249,9 @@ spec:
request to perform.
properties:
host:
- description: Host name to connect to,
- defaults to the pod IP. You probably
- want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in
@@ -1333,11 +1263,9 @@ spec:
probes
properties:
name:
- description: The header field
- name. This will be canonicalized
- upon output, so case-variant
- names will be understood as
- the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field
@@ -1356,25 +1284,37 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
+ sleep:
+ description: Sleep represents the duration
+ that the container should sleep before
+ being terminated.
+ properties:
+ seconds:
+ description: Seconds is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
- description: Deprecated. TCPSocket is NOT
- supported as a LifecycleHandler and kept
- for the backward compatibility. There
- are no validation of this field and lifecycle
- hooks will fail in runtime when tcp handler
- is specified.
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
properties:
host:
description: 'Optional: Host name to
@@ -1384,47 +1324,38 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
type: object
preStop:
- description: 'PreStop is called immediately
- before a container is terminated due to an
- API request or management event such as liveness/startup
- probe failure, preemption, resource contention,
- etc. The handler is not called if the container
- crashes or exits. The Pod''s termination grace
- period countdown begins before the PreStop
- hook is executed. Regardless of the outcome
- of the handler, the container will eventually
- terminate within the Pod''s termination grace
- period (unless delayed by finalizers). Other
- management of the container blocks until the
- hook completes or until the termination grace
- period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
properties:
exec:
description: Exec specifies the action to
take.
properties:
command:
- description: Command is the command
- line to execute inside the container,
- the working directory for the command is
- root ('/') in the container's filesystem.
- The command is simply exec'd, it is
- not run inside a shell, so traditional
- shell instructions ('|', etc) won't
- work. To use a shell, you need to
- explicitly call out to that shell.
- Exit status of 0 is treated as live/healthy
- and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
@@ -1434,10 +1365,9 @@ spec:
request to perform.
properties:
host:
- description: Host name to connect to,
- defaults to the pod IP. You probably
- want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in
@@ -1449,11 +1379,9 @@ spec:
probes
properties:
name:
- description: The header field
- name. This will be canonicalized
- upon output, so case-variant
- names will be understood as
- the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field
@@ -1472,25 +1400,37 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
+ sleep:
+ description: Sleep represents the duration
+ that the container should sleep before
+ being terminated.
+ properties:
+ seconds:
+ description: Seconds is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
- description: Deprecated. TCPSocket is NOT
- supported as a LifecycleHandler and kept
- for the backward compatibility. There
- are no validation of this field and lifecycle
- hooks will fail in runtime when tcp handler
- is specified.
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
properties:
host:
description: 'Optional: Host name to
@@ -1500,10 +1440,10 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
@@ -1511,39 +1451,35 @@ spec:
type: object
type: object
livenessProbe:
- description: 'Periodic probe of container liveness.
+ description: |-
+ Periodic probe of container liveness.
Container will be restarted if the probe fails.
- Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
properties:
exec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -1551,11 +1487,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -1565,8 +1502,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -1577,10 +1514,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -1598,35 +1534,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -1641,63 +1577,59 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
name:
- description: Name of the container specified as
- a DNS_LABEL. Each container in a pod must have
- a unique name (DNS_LABEL). Cannot be updated.
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
type: string
ports:
- description: List of ports to expose from the container.
- Not specifying a port here DOES NOT prevent that
- port from being exposed. Any port which is listening
- on the default "0.0.0.0" address inside a container
- will be accessible from the network. Modifying
- this array with strategic merge patch may corrupt
- the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
Cannot be updated.
items:
description: ContainerPort represents a network
port in a single container.
properties:
containerPort:
- description: Number of port to expose on the
- pod's IP address. This must be a valid port
- number, 0 < x < 65536.
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
hostIP:
@@ -1705,24 +1637,24 @@ spec:
port to.
type: string
hostPort:
- description: Number of port to expose on the
- host. If specified, this must be a valid
- port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an
- IANA_SVC_NAME and unique within the pod.
- Each named port in a pod must have a unique
- name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP,
- TCP, or SCTP. Defaults to "TCP".
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
type: string
required:
- containerPort
@@ -1733,40 +1665,35 @@ spec:
- protocol
x-kubernetes-list-type: map
readinessProbe:
- description: 'Periodic probe of container service
- readiness. Container will be removed from service
- endpoints if the probe fails. Cannot be updated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
properties:
exec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -1774,11 +1701,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -1788,8 +1716,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -1800,10 +1728,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -1821,35 +1748,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -1864,62 +1791,84 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents
+ resource resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
resources:
- description: 'Compute Resources required by this
- container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
properties:
claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -1935,8 +1884,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1945,37 +1895,52 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
securityContext:
- description: 'SecurityContext defines the security
- options the container should be run with. If set,
- the fields of SecurityContext override the equivalent
- fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/'
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
properties:
allowPrivilegeEscalation:
- description: 'AllowPrivilegeEscalation controls
- whether a process can gain more privileges
- than its parent process. This bool directly
- controls if the no_new_privs flag will be
- set on the container process. AllowPrivilegeEscalation
- is true always when the container is: 1) run
- as Privileged 2) has CAP_SYS_ADMIN Note that
- this field cannot be set when spec.os.name
- is windows.'
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
capabilities:
- description: The capabilities to add/drop when
- running containers. Defaults to the default
- set of capabilities granted by the container
- runtime. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
add:
description: Added capabilities
@@ -1993,69 +1958,60 @@ spec:
type: array
type: object
privileged:
- description: Run container in privileged mode.
- Processes in privileged containers are essentially
- equivalent to root on the host. Defaults to
- false. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
procMount:
- description: procMount denotes the type of proc
- mount to use for the containers. The default
- is DefaultProcMount which uses the container
- runtime defaults for readonly paths and masked
- paths. This requires the ProcMountType feature
- flag to be enabled. Note that this field cannot
- be set when spec.os.name is windows.
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default is DefaultProcMount which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
type: string
readOnlyRootFilesystem:
- description: Whether this container has a read-only
- root filesystem. Default is false. Note that
- this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
runAsGroup:
- description: The GID to run the entrypoint of
- the container process. Uses runtime default
- if unset. May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is windows.
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
runAsNonRoot:
- description: Indicates that the container must
- run as a non-root user. If true, the Kubelet
- will validate the image at runtime to ensure
- that it does not run as UID 0 (root) and fail
- to start the container if it does. If unset
- or false, no such validation will be performed.
- May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence.
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: boolean
runAsUser:
- description: The UID to run the entrypoint of
- the container process. Defaults to user specified
- in image metadata if unspecified. May also
- be set in PodSecurityContext. If set in both
- SecurityContext and PodSecurityContext, the
- value specified in SecurityContext takes precedence.
- Note that this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
seLinuxOptions:
- description: The SELinux context to be applied
- to the container. If unspecified, the container
- runtime will allocate a random SELinux context
- for each container. May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is windows.
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
level:
description: Level is SELinux level label
@@ -2075,123 +2031,98 @@ spec:
type: string
type: object
seccompProfile:
- description: The seccomp options to use by this
- container. If seccomp options are provided
- at both the pod & container level, the container
- options override the pod options. Note that
- this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
localhostProfile:
- description: localhostProfile indicates
- a profile defined in a file on the node
- should be used. The profile must be preconfigured
- on the node to work. Must be a descending
- path, relative to the kubelet's configured
- seccomp profile location. Must only be
- set if type is "Localhost".
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
type: string
type:
- description: "type indicates which kind
- of seccomp profile will be applied. Valid
- options are: \n Localhost - a profile
- defined in a file on the node should be
- used. RuntimeDefault - the container runtime
- default profile should be used. Unconfined
- - no profile should be applied."
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
type: string
required:
- type
type: object
windowsOptions:
- description: The Windows specific settings applied
- to all containers. If unspecified, the options
- from the PodSecurityContext will be used.
- If set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is linux.
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
properties:
gmsaCredentialSpec:
- description: GMSACredentialSpec is where
- the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa)
- inlines the contents of the GMSA credential
- spec named by the GMSACredentialSpecName
- field.
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
type: string
gmsaCredentialSpecName:
description: GMSACredentialSpecName is the
name of the GMSA credential spec to use.
type: string
hostProcess:
- description: HostProcess determines if a
- container should be run as a 'Host Process'
- container. This field is alpha-level and
- will only be honored by components that
- enable the WindowsHostProcessContainers
- feature flag. Setting this field without
- the feature flag will result in errors
- when validating the Pod. All of a Pod's
- containers must have the same effective
- HostProcess value (it is not allowed to
- have a mix of HostProcess containers and
- non-HostProcess containers). In addition,
- if HostProcess is true then HostNetwork
- must also be set to true.
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
type: boolean
runAsUserName:
- description: The UserName in Windows to
- run the entrypoint of the container process.
- Defaults to the user specified in image
- metadata if unspecified. May also be set
- in PodSecurityContext. If set in both
- SecurityContext and PodSecurityContext,
- the value specified in SecurityContext
- takes precedence.
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: string
type: object
type: object
startupProbe:
- description: 'StartupProbe indicates that the Pod
- has successfully initialized. If specified, no
- other probes are executed until this completes
- successfully. If this probe fails, the Pod will
- be restarted, just as if the livenessProbe failed.
- This can be used to provide different probe parameters
- at the beginning of a Pod''s lifecycle, when it
- might take a long time to load data or warm a
- cache, than during steady-state operation. This
- cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ StartupProbe indicates that the Pod has successfully initialized.
+ If specified, no other probes are executed until this completes successfully.
+ If this probe fails, the Pod will be restarted, just as if the livenessProbe failed.
+ This can be used to provide different probe parameters at the beginning of a Pod's lifecycle,
+ when it might take a long time to load data or warm a cache, than during steady-state operation.
+ This cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
properties:
exec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -2199,11 +2130,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -2213,8 +2145,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -2225,10 +2157,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -2246,35 +2177,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -2289,87 +2220,76 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
stdin:
- description: Whether this container should allocate
- a buffer for stdin in the container runtime. If
- this is not set, reads from stdin in the container
- will always result in EOF. Default is false.
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
type: boolean
stdinOnce:
- description: Whether the container runtime should
- close the stdin channel after it has been opened
- by a single attach. When stdin is true the stdin
- stream will remain open across multiple attach
- sessions. If stdinOnce is set to true, stdin is
- opened on container start, is empty until the
- first client attaches to stdin, and then remains
- open and accepts data until the client disconnects,
- at which time stdin is closed and remains closed
- until the container is restarted. If this flag
- is false, a container processes that reads from
- stdin will never receive an EOF. Default is false
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
type: boolean
terminationMessagePath:
- description: 'Optional: Path at which the file to
- which the container''s termination message will
- be written is mounted into the container''s filesystem.
- Message written is intended to be brief final
- status, such as an assertion failure message.
- Will be truncated by the node if greater than
- 4096 bytes. The total message length across all
- containers will be limited to 12kb. Defaults to
- /dev/termination-log. Cannot be updated.'
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
type: string
terminationMessagePolicy:
- description: Indicate how the termination message
- should be populated. File will use the contents
- of terminationMessagePath to populate the container
- status message on both success and failure. FallbackToLogsOnError
- will use the last chunk of container log output
- if the termination message file is empty and the
- container exited with an error. The log output
- is limited to 2048 bytes or 80 lines, whichever
- is smaller. Defaults to File. Cannot be updated.
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
type: string
tty:
- description: Whether this container should allocate
- a TTY for itself, also requires 'stdin' to be
- true. Default is false.
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
type: boolean
volumeDevices:
description: volumeDevices is the list of block
@@ -2393,46 +2313,45 @@ spec:
type: object
type: array
volumeMounts:
- description: Pod volumes to mount into the container's
- filesystem. Cannot be updated.
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
items:
description: VolumeMount describes a mounting
of a Volume within a container.
properties:
mountPath:
- description: Path within the container at
- which the volume should be mounted. Must
+ description: |-
+ Path within the container at which the volume should be mounted. Must
not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how
- mounts are propagated from the host to container
- and the other way around. When not set,
- MountPropagationNone is used. This field
- is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a
Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write
- otherwise (false or unspecified). Defaults
- to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which
- the container's volume should be mounted.
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume
- from which the container's volume should
- be mounted. Behaves similarly to SubPath
- but environment variable references $(VAR_NAME)
- are expanded using the container's environment.
- Defaults to "" (volume's root). SubPathExpr
- and SubPath are mutually exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -2440,33 +2359,36 @@ spec:
type: object
type: array
workingDir:
- description: Container's working directory. If not
- specified, the container runtime's default will
- be used, which might be configured in the container
- image. Cannot be updated.
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
type: string
required:
- name
type: object
type: array
dnsConfig:
- description: Specifies the DNS parameters of a pod. Parameters
- specified here will be merged to the generated DNS configuration
- based on DNSPolicy.
+ description: |-
+ Specifies the DNS parameters of a pod.
+ Parameters specified here will be merged to the generated DNS
+ configuration based on DNSPolicy.
properties:
nameservers:
- description: A list of DNS name server IP addresses.
- This will be appended to the base nameservers generated
- from DNSPolicy. Duplicated nameservers will be removed.
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
items:
type: string
type: array
options:
- description: A list of DNS resolver options. This
- will be merged with the base options generated from
- DNSPolicy. Duplicated entries will be removed. Resolution
- options given in Options will override those that
- appear in the base DNSPolicy.
+ description: |-
+ A list of DNS resolver options.
+ This will be merged with the base options generated from DNSPolicy.
+ Duplicated entries will be removed. Resolution options given in Options
+ will override those that appear in the base DNSPolicy.
items:
description: PodDNSConfigOption defines DNS resolver
options of a pod.
@@ -2479,82 +2401,77 @@ spec:
type: object
type: array
searches:
- description: A list of DNS search domains for host-name
- lookup. This will be appended to the base search
- paths generated from DNSPolicy. Duplicated search
- paths will be removed.
+ description: |-
+ A list of DNS search domains for host-name lookup.
+ This will be appended to the base search paths generated from DNSPolicy.
+ Duplicated search paths will be removed.
items:
type: string
type: array
type: object
dnsPolicy:
- description: Set DNS policy for the pod. Defaults to "ClusterFirst".
- Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst',
- 'Default' or 'None'. DNS parameters given in DNSConfig
- will be merged with the policy selected with DNSPolicy.
- To have DNS options set along with hostNetwork, you
- have to specify DNS policy explicitly to 'ClusterFirstWithHostNet'.
+ description: |-
+ Set DNS policy for the pod.
+ Defaults to "ClusterFirst".
+ Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'.
+ DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy.
+ To have DNS options set along with hostNetwork, you have to specify DNS policy
+ explicitly to 'ClusterFirstWithHostNet'.
type: string
enableServiceLinks:
- description: 'EnableServiceLinks indicates whether information
- about services should be injected into pod''s environment
- variables, matching the syntax of Docker links. Optional:
- Defaults to true.'
+ description: |-
+ EnableServiceLinks indicates whether information about services should be injected into pod's
+ environment variables, matching the syntax of Docker links.
+ Optional: Defaults to true.
type: boolean
ephemeralContainers:
- description: List of ephemeral containers run in this
- pod. Ephemeral containers may be run in an existing
- pod to perform user-initiated actions such as debugging.
- This list cannot be specified when creating a pod, and
- it cannot be modified by updating the pod spec. In order
- to add an ephemeral container to an existing pod, use
- the pod's ephemeralcontainers subresource.
+ description: |-
+ List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing
+ pod to perform user-initiated actions such as debugging. This list cannot be specified when
+ creating a pod, and it cannot be modified by updating the pod spec. In order to add an
+ ephemeral container to an existing pod, use the pod's ephemeralcontainers subresource.
items:
- description: "An EphemeralContainer is a temporary container
- that you may add to an existing Pod for user-initiated
- activities such as debugging. Ephemeral containers
- have no resource or scheduling guarantees, and they
- will not be restarted when they exit or when a Pod
- is removed or restarted. The kubelet may evict a Pod
- if an ephemeral container causes the Pod to exceed
- its resource allocation. \n To add an ephemeral container,
- use the ephemeralcontainers subresource of an existing
- Pod. Ephemeral containers may not be removed or restarted."
+ description: |-
+ An EphemeralContainer is a temporary container that you may add to an existing Pod for
+ user-initiated activities such as debugging. Ephemeral containers have no resource or
+ scheduling guarantees, and they will not be restarted when they exit or when a Pod is
+ removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the
+ Pod to exceed its resource allocation.
+
+
+ To add an ephemeral container, use the ephemeralcontainers subresource of an existing
+ Pod. Ephemeral containers may not be removed or restarted.
properties:
args:
- description: 'Arguments to the entrypoint. The image''s
- CMD is used if this is not provided. Variable
- references $(VAR_NAME) are expanded using the
- container''s environment. If a variable cannot
- be resolved, the reference in the input string
- will be unchanged. Double $$ are reduced to a
- single $, which allows for escaping the $(VAR_NAME)
- syntax: i.e. "$$(VAR_NAME)" will produce the string
- literal "$(VAR_NAME)". Escaped references will
- never be expanded, regardless of whether the variable
- exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
+ description: |-
+ Arguments to the entrypoint.
+ The image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
items:
type: string
type: array
command:
- description: 'Entrypoint array. Not executed within
- a shell. The image''s ENTRYPOINT is used if this
- is not provided. Variable references $(VAR_NAME)
- are expanded using the container''s environment.
- If a variable cannot be resolved, the reference
- in the input string will be unchanged. Double
- $$ are reduced to a single $, which allows for
- escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)"
- will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Cannot
- be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
items:
type: string
type: array
env:
- description: List of environment variables to set
- in the container. Cannot be updated.
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
items:
description: EnvVar represents an environment
variable present in a Container.
@@ -2564,18 +2481,16 @@ spec:
Must be a C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME)
- are expanded using the previously defined
- environment variables in the container and
- any service environment variables. If a
- variable cannot be resolved, the reference
- in the input string will be unchanged. Double
- $$ are reduced to a single $, which allows
- for escaping the $(VAR_NAME) syntax: i.e.
- "$$(VAR_NAME)" will produce the string literal
- "$(VAR_NAME)". Escaped references will never
- be expanded, regardless of whether the variable
- exists or not. Defaults to "".'
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's
@@ -2588,10 +2503,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -2602,11 +2517,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod:
- supports metadata.name, metadata.namespace,
- `metadata.labels['''']`, `metadata.annotations['''']`,
- spec.nodeName, spec.serviceAccountName,
- status.hostIP, status.podIP, status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema
@@ -2622,12 +2535,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the
- container: only resources limits and
- requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu,
- requests.memory and requests.ephemeral-storage)
- are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -2660,10 +2570,10 @@ spec:
secret key.
type: string
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -2679,15 +2589,13 @@ spec:
type: object
type: array
envFrom:
- description: List of sources to populate environment
- variables in the container. The keys defined within
- a source must be a C_IDENTIFIER. All invalid keys
- will be reported as an event when the container
- is starting. When a key exists in multiple sources,
- the value associated with the last source will
- take precedence. Values defined by an Env with
- a duplicate key will take precedence. Cannot be
- updated.
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
items:
description: EnvFromSource represents the source
of a set of ConfigMaps
@@ -2696,10 +2604,10 @@ spec:
description: The ConfigMap to select from
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -2716,10 +2624,10 @@ spec:
description: The Secret to select from
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -2730,42 +2638,40 @@ spec:
type: object
type: array
image:
- description: 'Container image name. More info: https://kubernetes.io/docs/concepts/containers/images'
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
type: string
imagePullPolicy:
- description: 'Image pull policy. One of Always,
- Never, IfNotPresent. Defaults to Always if :latest
- tag is specified, or IfNotPresent otherwise. Cannot
- be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images'
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
type: string
lifecycle:
description: Lifecycle is not allowed for ephemeral
containers.
properties:
postStart:
- description: 'PostStart is called immediately
- after a container is created. If the handler
- fails, the container is terminated and restarted
- according to its restart policy. Other management
- of the container blocks until the hook completes.
- More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
properties:
exec:
description: Exec specifies the action to
take.
properties:
command:
- description: Command is the command
- line to execute inside the container,
- the working directory for the command is
- root ('/') in the container's filesystem.
- The command is simply exec'd, it is
- not run inside a shell, so traditional
- shell instructions ('|', etc) won't
- work. To use a shell, you need to
- explicitly call out to that shell.
- Exit status of 0 is treated as live/healthy
- and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
@@ -2775,10 +2681,9 @@ spec:
request to perform.
properties:
host:
- description: Host name to connect to,
- defaults to the pod IP. You probably
- want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in
@@ -2790,11 +2695,9 @@ spec:
probes
properties:
name:
- description: The header field
- name. This will be canonicalized
- upon output, so case-variant
- names will be understood as
- the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field
@@ -2813,25 +2716,37 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
+ sleep:
+ description: Sleep represents the duration
+ that the container should sleep before
+ being terminated.
+ properties:
+ seconds:
+ description: Seconds is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
- description: Deprecated. TCPSocket is NOT
- supported as a LifecycleHandler and kept
- for the backward compatibility. There
- are no validation of this field and lifecycle
- hooks will fail in runtime when tcp handler
- is specified.
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
properties:
host:
description: 'Optional: Host name to
@@ -2841,47 +2756,38 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
type: object
preStop:
- description: 'PreStop is called immediately
- before a container is terminated due to an
- API request or management event such as liveness/startup
- probe failure, preemption, resource contention,
- etc. The handler is not called if the container
- crashes or exits. The Pod''s termination grace
- period countdown begins before the PreStop
- hook is executed. Regardless of the outcome
- of the handler, the container will eventually
- terminate within the Pod''s termination grace
- period (unless delayed by finalizers). Other
- management of the container blocks until the
- hook completes or until the termination grace
- period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
properties:
exec:
description: Exec specifies the action to
take.
properties:
command:
- description: Command is the command
- line to execute inside the container,
- the working directory for the command is
- root ('/') in the container's filesystem.
- The command is simply exec'd, it is
- not run inside a shell, so traditional
- shell instructions ('|', etc) won't
- work. To use a shell, you need to
- explicitly call out to that shell.
- Exit status of 0 is treated as live/healthy
- and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
@@ -2891,10 +2797,9 @@ spec:
request to perform.
properties:
host:
- description: Host name to connect to,
- defaults to the pod IP. You probably
- want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in
@@ -2906,11 +2811,9 @@ spec:
probes
properties:
name:
- description: The header field
- name. This will be canonicalized
- upon output, so case-variant
- names will be understood as
- the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field
@@ -2929,25 +2832,37 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
+ sleep:
+ description: Sleep represents the duration
+ that the container should sleep before
+ being terminated.
+ properties:
+ seconds:
+ description: Seconds is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
- description: Deprecated. TCPSocket is NOT
- supported as a LifecycleHandler and kept
- for the backward compatibility. There
- are no validation of this field and lifecycle
- hooks will fail in runtime when tcp handler
- is specified.
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
properties:
host:
description: 'Optional: Host name to
@@ -2957,10 +2872,10 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
@@ -2975,31 +2890,25 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -3007,11 +2916,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -3021,8 +2931,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -3033,10 +2943,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -3054,35 +2963,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -3097,46 +3006,40 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
name:
- description: Name of the ephemeral container specified
- as a DNS_LABEL. This name must be unique among
- all containers, init containers and ephemeral
- containers.
+ description: |-
+ Name of the ephemeral container specified as a DNS_LABEL.
+ This name must be unique among all containers, init containers and ephemeral containers.
type: string
ports:
description: Ports are not allowed for ephemeral
@@ -3146,9 +3049,9 @@ spec:
port in a single container.
properties:
containerPort:
- description: Number of port to expose on the
- pod's IP address. This must be a valid port
- number, 0 < x < 65536.
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
hostIP:
@@ -3156,24 +3059,24 @@ spec:
port to.
type: string
hostPort:
- description: Number of port to expose on the
- host. If specified, this must be a valid
- port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an
- IANA_SVC_NAME and unique within the pod.
- Each named port in a pod must have a unique
- name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP,
- TCP, or SCTP. Defaults to "TCP".
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
type: string
required:
- containerPort
@@ -3191,31 +3094,25 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -3223,11 +3120,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -3237,8 +3135,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -3249,10 +3147,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -3270,35 +3167,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -3313,63 +3210,83 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents
+ resource resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
resources:
- description: Resources are not allowed for ephemeral
- containers. Ephemeral containers use spare resources
+ description: |-
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -3385,8 +3302,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -3395,37 +3313,40 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
+ restartPolicy:
+ description: |-
+ Restart policy for the container to manage the restart behavior of each
+ container within a pod.
+ This may only be set for init containers. You cannot set this field on
+ ephemeral containers.
+ type: string
securityContext:
- description: 'Optional: SecurityContext defines
- the security options the ephemeral container should
- be run with. If set, the fields of SecurityContext
- override the equivalent fields of PodSecurityContext.'
+ description: |-
+ Optional: SecurityContext defines the security options the ephemeral container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
properties:
allowPrivilegeEscalation:
- description: 'AllowPrivilegeEscalation controls
- whether a process can gain more privileges
- than its parent process. This bool directly
- controls if the no_new_privs flag will be
- set on the container process. AllowPrivilegeEscalation
- is true always when the container is: 1) run
- as Privileged 2) has CAP_SYS_ADMIN Note that
- this field cannot be set when spec.os.name
- is windows.'
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
capabilities:
- description: The capabilities to add/drop when
- running containers. Defaults to the default
- set of capabilities granted by the container
- runtime. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
add:
description: Added capabilities
@@ -3443,69 +3364,60 @@ spec:
type: array
type: object
privileged:
- description: Run container in privileged mode.
- Processes in privileged containers are essentially
- equivalent to root on the host. Defaults to
- false. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
procMount:
- description: procMount denotes the type of proc
- mount to use for the containers. The default
- is DefaultProcMount which uses the container
- runtime defaults for readonly paths and masked
- paths. This requires the ProcMountType feature
- flag to be enabled. Note that this field cannot
- be set when spec.os.name is windows.
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default is DefaultProcMount which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
type: string
readOnlyRootFilesystem:
- description: Whether this container has a read-only
- root filesystem. Default is false. Note that
- this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
runAsGroup:
- description: The GID to run the entrypoint of
- the container process. Uses runtime default
- if unset. May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is windows.
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
runAsNonRoot:
- description: Indicates that the container must
- run as a non-root user. If true, the Kubelet
- will validate the image at runtime to ensure
- that it does not run as UID 0 (root) and fail
- to start the container if it does. If unset
- or false, no such validation will be performed.
- May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence.
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: boolean
runAsUser:
- description: The UID to run the entrypoint of
- the container process. Defaults to user specified
- in image metadata if unspecified. May also
- be set in PodSecurityContext. If set in both
- SecurityContext and PodSecurityContext, the
- value specified in SecurityContext takes precedence.
- Note that this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
seLinuxOptions:
- description: The SELinux context to be applied
- to the container. If unspecified, the container
- runtime will allocate a random SELinux context
- for each container. May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is windows.
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
level:
description: Level is SELinux level label
@@ -3525,79 +3437,62 @@ spec:
type: string
type: object
seccompProfile:
- description: The seccomp options to use by this
- container. If seccomp options are provided
- at both the pod & container level, the container
- options override the pod options. Note that
- this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
localhostProfile:
- description: localhostProfile indicates
- a profile defined in a file on the node
- should be used. The profile must be preconfigured
- on the node to work. Must be a descending
- path, relative to the kubelet's configured
- seccomp profile location. Must only be
- set if type is "Localhost".
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
type: string
type:
- description: "type indicates which kind
- of seccomp profile will be applied. Valid
- options are: \n Localhost - a profile
- defined in a file on the node should be
- used. RuntimeDefault - the container runtime
- default profile should be used. Unconfined
- - no profile should be applied."
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
type: string
required:
- type
type: object
windowsOptions:
- description: The Windows specific settings applied
- to all containers. If unspecified, the options
- from the PodSecurityContext will be used.
- If set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is linux.
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
properties:
gmsaCredentialSpec:
- description: GMSACredentialSpec is where
- the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa)
- inlines the contents of the GMSA credential
- spec named by the GMSACredentialSpecName
- field.
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
type: string
gmsaCredentialSpecName:
description: GMSACredentialSpecName is the
name of the GMSA credential spec to use.
type: string
hostProcess:
- description: HostProcess determines if a
- container should be run as a 'Host Process'
- container. This field is alpha-level and
- will only be honored by components that
- enable the WindowsHostProcessContainers
- feature flag. Setting this field without
- the feature flag will result in errors
- when validating the Pod. All of a Pod's
- containers must have the same effective
- HostProcess value (it is not allowed to
- have a mix of HostProcess containers and
- non-HostProcess containers). In addition,
- if HostProcess is true then HostNetwork
- must also be set to true.
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
type: boolean
runAsUserName:
- description: The UserName in Windows to
- run the entrypoint of the container process.
- Defaults to the user specified in image
- metadata if unspecified. May also be set
- in PodSecurityContext. If set in both
- SecurityContext and PodSecurityContext,
- the value specified in SecurityContext
- takes precedence.
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: string
type: object
type: object
@@ -3609,31 +3504,25 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -3641,11 +3530,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -3655,8 +3545,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -3667,10 +3557,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -3688,35 +3577,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -3731,98 +3620,86 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
stdin:
- description: Whether this container should allocate
- a buffer for stdin in the container runtime. If
- this is not set, reads from stdin in the container
- will always result in EOF. Default is false.
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
type: boolean
stdinOnce:
- description: Whether the container runtime should
- close the stdin channel after it has been opened
- by a single attach. When stdin is true the stdin
- stream will remain open across multiple attach
- sessions. If stdinOnce is set to true, stdin is
- opened on container start, is empty until the
- first client attaches to stdin, and then remains
- open and accepts data until the client disconnects,
- at which time stdin is closed and remains closed
- until the container is restarted. If this flag
- is false, a container processes that reads from
- stdin will never receive an EOF. Default is false
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
type: boolean
targetContainerName:
- description: "If set, the name of the container
- from PodSpec that this ephemeral container targets.
- The ephemeral container will be run in the namespaces
- (IPC, PID, etc) of this container. If not set
- then the ephemeral container uses the namespaces
- configured in the Pod spec. \n The container runtime
- must implement support for this feature. If the
- runtime does not support namespace targeting then
- the result of setting this field is undefined."
+ description: |-
+ If set, the name of the container from PodSpec that this ephemeral container targets.
+ The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
+ If not set then the ephemeral container uses the namespaces configured in the Pod spec.
+
+
+ The container runtime must implement support for this feature. If the runtime does not
+ support namespace targeting then the result of setting this field is undefined.
type: string
terminationMessagePath:
- description: 'Optional: Path at which the file to
- which the container''s termination message will
- be written is mounted into the container''s filesystem.
- Message written is intended to be brief final
- status, such as an assertion failure message.
- Will be truncated by the node if greater than
- 4096 bytes. The total message length across all
- containers will be limited to 12kb. Defaults to
- /dev/termination-log. Cannot be updated.'
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
type: string
terminationMessagePolicy:
- description: Indicate how the termination message
- should be populated. File will use the contents
- of terminationMessagePath to populate the container
- status message on both success and failure. FallbackToLogsOnError
- will use the last chunk of container log output
- if the termination message file is empty and the
- container exited with an error. The log output
- is limited to 2048 bytes or 80 lines, whichever
- is smaller. Defaults to File. Cannot be updated.
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
type: string
tty:
- description: Whether this container should allocate
- a TTY for itself, also requires 'stdin' to be
- true. Default is false.
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
type: boolean
volumeDevices:
description: volumeDevices is the list of block
@@ -3846,47 +3723,45 @@ spec:
type: object
type: array
volumeMounts:
- description: Pod volumes to mount into the container's
- filesystem. Subpath mounts are not allowed for
- ephemeral containers. Cannot be updated.
+ description: |-
+ Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
+ Cannot be updated.
items:
description: VolumeMount describes a mounting
of a Volume within a container.
properties:
mountPath:
- description: Path within the container at
- which the volume should be mounted. Must
+ description: |-
+ Path within the container at which the volume should be mounted. Must
not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how
- mounts are propagated from the host to container
- and the other way around. When not set,
- MountPropagationNone is used. This field
- is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a
Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write
- otherwise (false or unspecified). Defaults
- to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which
- the container's volume should be mounted.
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume
- from which the container's volume should
- be mounted. Behaves similarly to SubPath
- but environment variable references $(VAR_NAME)
- are expanded using the container's environment.
- Defaults to "" (volume's root). SubPathExpr
- and SubPath are mutually exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -3894,24 +3769,24 @@ spec:
type: object
type: array
workingDir:
- description: Container's working directory. If not
- specified, the container runtime's default will
- be used, which might be configured in the container
- image. Cannot be updated.
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
type: string
required:
- name
type: object
type: array
hostAliases:
- description: HostAliases is an optional list of hosts
- and IPs that will be injected into the pod's hosts file
- if specified. This is only valid for non-hostNetwork
- pods.
+ description: |-
+ HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
+ file if specified. This is only valid for non-hostNetwork pods.
items:
- description: HostAlias holds the mapping between IP
- and hostnames that will be injected as an entry in
- the pod's hosts file.
+ description: |-
+ HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
+ pod's hosts file.
properties:
hostnames:
description: Hostnames for the above IP address.
@@ -3924,111 +3799,106 @@ spec:
type: object
type: array
hostIPC:
- description: 'Use the host''s ipc namespace. Optional:
- Default to false.'
+ description: |-
+ Use the host's ipc namespace.
+ Optional: Default to false.
type: boolean
hostNetwork:
- description: Host networking requested for this pod. Use
- the host's network namespace. If this option is set,
- the ports that will be used must be specified. Default
- to false.
+ description: |-
+ Host networking requested for this pod. Use the host's network namespace.
+ If this option is set, the ports that will be used must be specified.
+ Default to false.
type: boolean
hostPID:
- description: 'Use the host''s pid namespace. Optional:
- Default to false.'
+ description: |-
+ Use the host's pid namespace.
+ Optional: Default to false.
type: boolean
hostUsers:
- description: 'Use the host''s user namespace. Optional:
- Default to true. If set to true or not present, the
- pod will be run in the host user namespace, useful for
- when the pod needs a feature only available to the host
- user namespace, such as loading a kernel module with
- CAP_SYS_MODULE. When set to false, a new userns is created
- for the pod. Setting false is useful for mitigating
- container breakout vulnerabilities even allowing users
- to run their containers as root without actually having
- root privileges on the host. This field is alpha-level
- and is only honored by servers that enable the UserNamespacesSupport
- feature.'
+ description: |-
+ Use the host's user namespace.
+ Optional: Default to true.
+ If set to true or not present, the pod will be run in the host user namespace, useful
+ for when the pod needs a feature only available to the host user namespace, such as
+ loading a kernel module with CAP_SYS_MODULE.
+ When set to false, a new userns is created for the pod. Setting false is useful for
+ mitigating container breakout vulnerabilities even allowing users to run their
+ containers as root without actually having root privileges on the host.
+ This field is alpha-level and is only honored by servers that enable the UserNamespacesSupport feature.
type: boolean
hostname:
- description: Specifies the hostname of the Pod If not
- specified, the pod's hostname will be set to a system-defined
- value.
+ description: |-
+ Specifies the hostname of the Pod
+ If not specified, the pod's hostname will be set to a system-defined value.
type: string
imagePullSecrets:
- description: 'ImagePullSecrets is an optional list of
- references to secrets in the same namespace to use for
- pulling any of the images used by this PodSpec. If specified,
- these secrets will be passed to individual puller implementations
- for them to use. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod'
+ description: |-
+ ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec.
+ If specified, these secrets will be passed to individual puller implementations for them to use.
+ More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
items:
- description: LocalObjectReference contains enough information
- to let you locate the referenced object inside the
- same namespace.
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
type: array
initContainers:
- description: 'List of initialization containers belonging
- to the pod. Init containers are executed in order prior
- to containers being started. If any init container fails,
- the pod is considered to have failed and is handled
- according to its restartPolicy. The name for an init
- container or normal container must be unique among all
- containers. Init containers may not have Lifecycle actions,
- Readiness probes, Liveness probes, or Startup probes.
- The resourceRequirements of an init container are taken
- into account during scheduling by finding the highest
- request/limit for each resource type, and then using
- the max of of that value or the sum of the normal containers.
- Limits are applied to init containers in a similar fashion.
+ description: |-
+ List of initialization containers belonging to the pod.
+ Init containers are executed in order prior to containers being started. If any
+ init container fails, the pod is considered to have failed and is handled according
+ to its restartPolicy. The name for an init container or normal container must be
+ unique among all containers.
+ Init containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes.
+ The resourceRequirements of an init container are taken into account during scheduling
+ by finding the highest request/limit for each resource type, and then using the max of
+ of that value or the sum of the normal containers. Limits are applied to init containers
+ in a similar fashion.
Init containers cannot currently be added or removed.
- Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/'
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
items:
description: A single application container that you
want to run within a pod.
properties:
args:
- description: 'Arguments to the entrypoint. The container
- image''s CMD is used if this is not provided.
- Variable references $(VAR_NAME) are expanded using
- the container''s environment. If a variable cannot
- be resolved, the reference in the input string
- will be unchanged. Double $$ are reduced to a
- single $, which allows for escaping the $(VAR_NAME)
- syntax: i.e. "$$(VAR_NAME)" will produce the string
- literal "$(VAR_NAME)". Escaped references will
- never be expanded, regardless of whether the variable
- exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
items:
type: string
type: array
command:
- description: 'Entrypoint array. Not executed within
- a shell. The container image''s ENTRYPOINT is
- used if this is not provided. Variable references
- $(VAR_NAME) are expanded using the container''s
- environment. If a variable cannot be resolved,
- the reference in the input string will be unchanged.
- Double $$ are reduced to a single $, which allows
- for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)"
- will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Cannot
- be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell'
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
items:
type: string
type: array
env:
- description: List of environment variables to set
- in the container. Cannot be updated.
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
items:
description: EnvVar represents an environment
variable present in a Container.
@@ -4038,18 +3908,16 @@ spec:
Must be a C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME)
- are expanded using the previously defined
- environment variables in the container and
- any service environment variables. If a
- variable cannot be resolved, the reference
- in the input string will be unchanged. Double
- $$ are reduced to a single $, which allows
- for escaping the $(VAR_NAME) syntax: i.e.
- "$$(VAR_NAME)" will produce the string literal
- "$(VAR_NAME)". Escaped references will never
- be expanded, regardless of whether the variable
- exists or not. Defaults to "".'
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's
@@ -4062,10 +3930,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -4076,11 +3944,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod:
- supports metadata.name, metadata.namespace,
- `metadata.labels['''']`, `metadata.annotations['''']`,
- spec.nodeName, spec.serviceAccountName,
- status.hostIP, status.podIP, status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema
@@ -4096,12 +3962,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the
- container: only resources limits and
- requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu,
- requests.memory and requests.ephemeral-storage)
- are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -4134,10 +3997,10 @@ spec:
secret key.
type: string
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -4153,15 +4016,13 @@ spec:
type: object
type: array
envFrom:
- description: List of sources to populate environment
- variables in the container. The keys defined within
- a source must be a C_IDENTIFIER. All invalid keys
- will be reported as an event when the container
- is starting. When a key exists in multiple sources,
- the value associated with the last source will
- take precedence. Values defined by an Env with
- a duplicate key will take precedence. Cannot be
- updated.
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
items:
description: EnvFromSource represents the source
of a set of ConfigMaps
@@ -4170,10 +4031,10 @@ spec:
description: The ConfigMap to select from
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -4190,10 +4051,10 @@ spec:
description: The Secret to select from
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -4204,46 +4065,43 @@ spec:
type: object
type: array
image:
- description: 'Container image name. 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.'
+ description: |-
+ Container image name.
+ 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
imagePullPolicy:
- description: 'Image pull policy. One of Always,
- Never, IfNotPresent. Defaults to Always if :latest
- tag is specified, or IfNotPresent otherwise. Cannot
- be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images'
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
type: string
lifecycle:
- description: Actions that the management system
- should take in response to container lifecycle
- events. Cannot be updated.
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
properties:
postStart:
- description: 'PostStart is called immediately
- after a container is created. If the handler
- fails, the container is terminated and restarted
- according to its restart policy. Other management
- of the container blocks until the hook completes.
- More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
properties:
exec:
description: Exec specifies the action to
take.
properties:
command:
- description: Command is the command
- line to execute inside the container,
- the working directory for the command is
- root ('/') in the container's filesystem.
- The command is simply exec'd, it is
- not run inside a shell, so traditional
- shell instructions ('|', etc) won't
- work. To use a shell, you need to
- explicitly call out to that shell.
- Exit status of 0 is treated as live/healthy
- and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
@@ -4253,10 +4111,9 @@ spec:
request to perform.
properties:
host:
- description: Host name to connect to,
- defaults to the pod IP. You probably
- want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in
@@ -4268,11 +4125,9 @@ spec:
probes
properties:
name:
- description: The header field
- name. This will be canonicalized
- upon output, so case-variant
- names will be understood as
- the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field
@@ -4291,25 +4146,37 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
+ sleep:
+ description: Sleep represents the duration
+ that the container should sleep before
+ being terminated.
+ properties:
+ seconds:
+ description: Seconds is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
- description: Deprecated. TCPSocket is NOT
- supported as a LifecycleHandler and kept
- for the backward compatibility. There
- are no validation of this field and lifecycle
- hooks will fail in runtime when tcp handler
- is specified.
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
properties:
host:
description: 'Optional: Host name to
@@ -4319,47 +4186,38 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
type: object
preStop:
- description: 'PreStop is called immediately
- before a container is terminated due to an
- API request or management event such as liveness/startup
- probe failure, preemption, resource contention,
- etc. The handler is not called if the container
- crashes or exits. The Pod''s termination grace
- period countdown begins before the PreStop
- hook is executed. Regardless of the outcome
- of the handler, the container will eventually
- terminate within the Pod''s termination grace
- period (unless delayed by finalizers). Other
- management of the container blocks until the
- hook completes or until the termination grace
- period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks'
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
properties:
exec:
description: Exec specifies the action to
take.
properties:
command:
- description: Command is the command
- line to execute inside the container,
- the working directory for the command is
- root ('/') in the container's filesystem.
- The command is simply exec'd, it is
- not run inside a shell, so traditional
- shell instructions ('|', etc) won't
- work. To use a shell, you need to
- explicitly call out to that shell.
- Exit status of 0 is treated as live/healthy
- and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
@@ -4369,10 +4227,9 @@ spec:
request to perform.
properties:
host:
- description: Host name to connect to,
- defaults to the pod IP. You probably
- want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in
@@ -4384,11 +4241,9 @@ spec:
probes
properties:
name:
- description: The header field
- name. This will be canonicalized
- upon output, so case-variant
- names will be understood as
- the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field
@@ -4407,25 +4262,37 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
+ sleep:
+ description: Sleep represents the duration
+ that the container should sleep before
+ being terminated.
+ properties:
+ seconds:
+ description: Seconds is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
- description: Deprecated. TCPSocket is NOT
- supported as a LifecycleHandler and kept
- for the backward compatibility. There
- are no validation of this field and lifecycle
- hooks will fail in runtime when tcp handler
- is specified.
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
properties:
host:
description: 'Optional: Host name to
@@ -4435,10 +4302,10 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number
- must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
@@ -4446,39 +4313,35 @@ spec:
type: object
type: object
livenessProbe:
- description: 'Periodic probe of container liveness.
+ description: |-
+ Periodic probe of container liveness.
Container will be restarted if the probe fails.
- Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
properties:
exec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -4486,11 +4349,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -4500,8 +4364,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -4512,10 +4376,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -4533,35 +4396,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -4576,63 +4439,59 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
name:
- description: Name of the container specified as
- a DNS_LABEL. Each container in a pod must have
- a unique name (DNS_LABEL). Cannot be updated.
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
type: string
ports:
- description: List of ports to expose from the container.
- Not specifying a port here DOES NOT prevent that
- port from being exposed. Any port which is listening
- on the default "0.0.0.0" address inside a container
- will be accessible from the network. Modifying
- this array with strategic merge patch may corrupt
- the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
Cannot be updated.
items:
description: ContainerPort represents a network
port in a single container.
properties:
containerPort:
- description: Number of port to expose on the
- pod's IP address. This must be a valid port
- number, 0 < x < 65536.
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
hostIP:
@@ -4640,24 +4499,24 @@ spec:
port to.
type: string
hostPort:
- description: Number of port to expose on the
- host. If specified, this must be a valid
- port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an
- IANA_SVC_NAME and unique within the pod.
- Each named port in a pod must have a unique
- name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP,
- TCP, or SCTP. Defaults to "TCP".
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
type: string
required:
- containerPort
@@ -4668,40 +4527,35 @@ spec:
- protocol
x-kubernetes-list-type: map
readinessProbe:
- description: 'Periodic probe of container service
- readiness. Container will be removed from service
- endpoints if the probe fails. Cannot be updated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
properties:
exec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -4709,11 +4563,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -4723,8 +4578,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -4735,10 +4590,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -4756,35 +4610,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -4799,62 +4653,84 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents
+ resource resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
resources:
- description: 'Compute Resources required by this
- container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
properties:
claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -4870,8 +4746,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -4880,37 +4757,52 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
securityContext:
- description: 'SecurityContext defines the security
- options the container should be run with. If set,
- the fields of SecurityContext override the equivalent
- fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/'
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
properties:
allowPrivilegeEscalation:
- description: 'AllowPrivilegeEscalation controls
- whether a process can gain more privileges
- than its parent process. This bool directly
- controls if the no_new_privs flag will be
- set on the container process. AllowPrivilegeEscalation
- is true always when the container is: 1) run
- as Privileged 2) has CAP_SYS_ADMIN Note that
- this field cannot be set when spec.os.name
- is windows.'
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
capabilities:
- description: The capabilities to add/drop when
- running containers. Defaults to the default
- set of capabilities granted by the container
- runtime. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
add:
description: Added capabilities
@@ -4928,69 +4820,60 @@ spec:
type: array
type: object
privileged:
- description: Run container in privileged mode.
- Processes in privileged containers are essentially
- equivalent to root on the host. Defaults to
- false. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
procMount:
- description: procMount denotes the type of proc
- mount to use for the containers. The default
- is DefaultProcMount which uses the container
- runtime defaults for readonly paths and masked
- paths. This requires the ProcMountType feature
- flag to be enabled. Note that this field cannot
- be set when spec.os.name is windows.
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default is DefaultProcMount which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
type: string
readOnlyRootFilesystem:
- description: Whether this container has a read-only
- root filesystem. Default is false. Note that
- this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
type: boolean
runAsGroup:
- description: The GID to run the entrypoint of
- the container process. Uses runtime default
- if unset. May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is windows.
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
runAsNonRoot:
- description: Indicates that the container must
- run as a non-root user. If true, the Kubelet
- will validate the image at runtime to ensure
- that it does not run as UID 0 (root) and fail
- to start the container if it does. If unset
- or false, no such validation will be performed.
- May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence.
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: boolean
runAsUser:
- description: The UID to run the entrypoint of
- the container process. Defaults to user specified
- in image metadata if unspecified. May also
- be set in PodSecurityContext. If set in both
- SecurityContext and PodSecurityContext, the
- value specified in SecurityContext takes precedence.
- Note that this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
seLinuxOptions:
- description: The SELinux context to be applied
- to the container. If unspecified, the container
- runtime will allocate a random SELinux context
- for each container. May also be set in PodSecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is windows.
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
level:
description: Level is SELinux level label
@@ -5010,123 +4893,98 @@ spec:
type: string
type: object
seccompProfile:
- description: The seccomp options to use by this
- container. If seccomp options are provided
- at both the pod & container level, the container
- options override the pod options. Note that
- this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
localhostProfile:
- description: localhostProfile indicates
- a profile defined in a file on the node
- should be used. The profile must be preconfigured
- on the node to work. Must be a descending
- path, relative to the kubelet's configured
- seccomp profile location. Must only be
- set if type is "Localhost".
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
type: string
type:
- description: "type indicates which kind
- of seccomp profile will be applied. Valid
- options are: \n Localhost - a profile
- defined in a file on the node should be
- used. RuntimeDefault - the container runtime
- default profile should be used. Unconfined
- - no profile should be applied."
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
type: string
required:
- type
type: object
windowsOptions:
- description: The Windows specific settings applied
- to all containers. If unspecified, the options
- from the PodSecurityContext will be used.
- If set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence. Note that this field cannot be
- set when spec.os.name is linux.
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
properties:
gmsaCredentialSpec:
- description: GMSACredentialSpec is where
- the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa)
- inlines the contents of the GMSA credential
- spec named by the GMSACredentialSpecName
- field.
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
type: string
gmsaCredentialSpecName:
description: GMSACredentialSpecName is the
name of the GMSA credential spec to use.
type: string
hostProcess:
- description: HostProcess determines if a
- container should be run as a 'Host Process'
- container. This field is alpha-level and
- will only be honored by components that
- enable the WindowsHostProcessContainers
- feature flag. Setting this field without
- the feature flag will result in errors
- when validating the Pod. All of a Pod's
- containers must have the same effective
- HostProcess value (it is not allowed to
- have a mix of HostProcess containers and
- non-HostProcess containers). In addition,
- if HostProcess is true then HostNetwork
- must also be set to true.
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
type: boolean
runAsUserName:
- description: The UserName in Windows to
- run the entrypoint of the container process.
- Defaults to the user specified in image
- metadata if unspecified. May also be set
- in PodSecurityContext. If set in both
- SecurityContext and PodSecurityContext,
- the value specified in SecurityContext
- takes precedence.
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: string
type: object
type: object
startupProbe:
- description: 'StartupProbe indicates that the Pod
- has successfully initialized. If specified, no
- other probes are executed until this completes
- successfully. If this probe fails, the Pod will
- be restarted, just as if the livenessProbe failed.
- This can be used to provide different probe parameters
- at the beginning of a Pod''s lifecycle, when it
- might take a long time to load data or warm a
- cache, than during steady-state operation. This
- cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ StartupProbe indicates that the Pod has successfully initialized.
+ If specified, no other probes are executed until this completes successfully.
+ If this probe fails, the Pod will be restarted, just as if the livenessProbe failed.
+ This can be used to provide different probe parameters at the beginning of a Pod's lifecycle,
+ when it might take a long time to load data or warm a cache, than during steady-state operation.
+ This cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
properties:
exec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line
- to execute inside the container, the working
- directory for the command is root ('/')
- in the container's filesystem. The command
- is simply exec'd, it is not run inside
- a shell, so traditional shell instructions
- ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that
- shell. Exit status of 0 is treated as
- live/healthy and non-zero is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for
- the probe to be considered failed after having
- succeeded. Defaults to 3. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving
- a GRPC port. This is a beta field and requires
- enabling GRPCContainerProbe feature gate.
+ a GRPC port.
properties:
port:
description: Port number of the gRPC service.
@@ -5134,11 +4992,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the
- service to place in the gRPC HealthCheckRequest
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default
- behavior is defined by gRPC."
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -5148,8 +5007,8 @@ spec:
to perform.
properties:
host:
- description: Host name to connect to, defaults
- to the pod IP. You probably want to set
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
"Host" in httpHeaders instead.
type: string
httpHeaders:
@@ -5160,10 +5019,9 @@ spec:
header to be used in HTTP probes
properties:
name:
- description: The header field name.
- This will be canonicalized upon
- output, so case-variant names will
- be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -5181,35 +5039,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting
- to the host. Defaults to HTTP.
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container
- has started before liveness probes are initiated.
- More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform
- the probe. Default to 10 seconds. Minimum
- value is 1.
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for
- the probe to be considered successful after
- having failed. Defaults to 1. Must be 1 for
- liveness and startup. Minimum value is 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -5224,87 +5082,76 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port
- to access on the container. Number must
- be in the range 1 to 65535. Name must
- be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the
- pod needs to terminate gracefully upon probe
- failure. The grace period is the duration
- in seconds after the processes running in
- the pod are sent a termination signal and
- the time when the processes are forcibly halted
- with a kill signal. Set this value longer
- than the expected cleanup time for your process.
- If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides
- the value provided by the pod spec. Value
- must be non-negative integer. The value zero
- indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta
- field and requires enabling ProbeTerminationGracePeriod
- feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds
- is used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which
- the probe times out. Defaults to 1 second.
- Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
stdin:
- description: Whether this container should allocate
- a buffer for stdin in the container runtime. If
- this is not set, reads from stdin in the container
- will always result in EOF. Default is false.
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
type: boolean
stdinOnce:
- description: Whether the container runtime should
- close the stdin channel after it has been opened
- by a single attach. When stdin is true the stdin
- stream will remain open across multiple attach
- sessions. If stdinOnce is set to true, stdin is
- opened on container start, is empty until the
- first client attaches to stdin, and then remains
- open and accepts data until the client disconnects,
- at which time stdin is closed and remains closed
- until the container is restarted. If this flag
- is false, a container processes that reads from
- stdin will never receive an EOF. Default is false
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
type: boolean
terminationMessagePath:
- description: 'Optional: Path at which the file to
- which the container''s termination message will
- be written is mounted into the container''s filesystem.
- Message written is intended to be brief final
- status, such as an assertion failure message.
- Will be truncated by the node if greater than
- 4096 bytes. The total message length across all
- containers will be limited to 12kb. Defaults to
- /dev/termination-log. Cannot be updated.'
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
type: string
terminationMessagePolicy:
- description: Indicate how the termination message
- should be populated. File will use the contents
- of terminationMessagePath to populate the container
- status message on both success and failure. FallbackToLogsOnError
- will use the last chunk of container log output
- if the termination message file is empty and the
- container exited with an error. The log output
- is limited to 2048 bytes or 80 lines, whichever
- is smaller. Defaults to File. Cannot be updated.
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
type: string
tty:
- description: Whether this container should allocate
- a TTY for itself, also requires 'stdin' to be
- true. Default is false.
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
type: boolean
volumeDevices:
description: volumeDevices is the list of block
@@ -5328,46 +5175,45 @@ spec:
type: object
type: array
volumeMounts:
- description: Pod volumes to mount into the container's
- filesystem. Cannot be updated.
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
items:
description: VolumeMount describes a mounting
of a Volume within a container.
properties:
mountPath:
- description: Path within the container at
- which the volume should be mounted. Must
+ description: |-
+ Path within the container at which the volume should be mounted. Must
not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how
- mounts are propagated from the host to container
- and the other way around. When not set,
- MountPropagationNone is used. This field
- is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a
Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write
- otherwise (false or unspecified). Defaults
- to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which
- the container's volume should be mounted.
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume
- from which the container's volume should
- be mounted. Behaves similarly to SubPath
- but environment variable references $(VAR_NAME)
- are expanded using the container's environment.
- Defaults to "" (volume's root). SubPathExpr
- and SubPath are mutually exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -5375,57 +5221,70 @@ spec:
type: object
type: array
workingDir:
- description: Container's working directory. If not
- specified, the container runtime's default will
- be used, which might be configured in the container
- image. Cannot be updated.
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
type: string
required:
- name
type: object
type: array
nodeName:
- description: NodeName is a request to schedule this pod
- onto a specific node. If it is non-empty, the scheduler
- simply schedules this pod onto that node, assuming that
- it fits resource requirements.
+ description: |-
+ NodeName is a request to schedule this pod onto a specific node. If it is non-empty,
+ the scheduler simply schedules this pod onto that node, assuming that it fits resource
+ requirements.
type: string
nodeSelector:
additionalProperties:
type: string
- description: 'NodeSelector is a selector which must be
- true for the pod to fit on a node. Selector which must
- match a node''s labels for the pod to be scheduled on
- that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
+ description: |-
+ NodeSelector is a selector which must be true for the pod to fit on a node.
+ Selector which must match a node's labels for the pod to be scheduled on that node.
+ More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
type: object
x-kubernetes-map-type: atomic
os:
- description: "Specifies the OS of the containers in the
- pod. Some pod and container fields are restricted if
- this is set. \n If the OS field is set to linux, the
- following fields must be unset: -securityContext.windowsOptions
- \n If the OS field is set to windows, following fields
- must be unset: - spec.hostPID - spec.hostIPC - spec.hostUsers
- - spec.securityContext.seLinuxOptions - spec.securityContext.seccompProfile
- - spec.securityContext.fsGroup - spec.securityContext.fsGroupChangePolicy
- - spec.securityContext.sysctls - spec.shareProcessNamespace
- - spec.securityContext.runAsUser - spec.securityContext.runAsGroup
- - spec.securityContext.supplementalGroups - spec.containers[*].securityContext.seLinuxOptions
+ description: |-
+ Specifies the OS of the containers in the pod.
+ Some pod and container fields are restricted if this is set.
+
+
+ If the OS field is set to linux, the following fields must be unset:
+ -securityContext.windowsOptions
+
+
+ If the OS field is set to windows, following fields must be unset:
+ - spec.hostPID
+ - spec.hostIPC
+ - spec.hostUsers
+ - spec.securityContext.seLinuxOptions
+ - spec.securityContext.seccompProfile
+ - spec.securityContext.fsGroup
+ - spec.securityContext.fsGroupChangePolicy
+ - spec.securityContext.sysctls
+ - spec.shareProcessNamespace
+ - spec.securityContext.runAsUser
+ - spec.securityContext.runAsGroup
+ - spec.securityContext.supplementalGroups
+ - spec.containers[*].securityContext.seLinuxOptions
- spec.containers[*].securityContext.seccompProfile
- - spec.containers[*].securityContext.capabilities -
- spec.containers[*].securityContext.readOnlyRootFilesystem
- - spec.containers[*].securityContext.privileged - spec.containers[*].securityContext.allowPrivilegeEscalation
- - spec.containers[*].securityContext.procMount - spec.containers[*].securityContext.runAsUser
- - spec.containers[*].securityContext.runAsGroup"
+ - spec.containers[*].securityContext.capabilities
+ - spec.containers[*].securityContext.readOnlyRootFilesystem
+ - spec.containers[*].securityContext.privileged
+ - spec.containers[*].securityContext.allowPrivilegeEscalation
+ - spec.containers[*].securityContext.procMount
+ - spec.containers[*].securityContext.runAsUser
+ - spec.containers[*].securityContext.runAsGroup
properties:
name:
- description: 'Name is the name of the operating system.
- The currently supported values are linux and windows.
- Additional value may be defined in future and can
- be one of: https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration
- Clients should expect to handle additional values
- and treat unrecognized values in this field as os:
- null'
+ description: |-
+ Name is the name of the operating system. The currently supported values are linux and windows.
+ Additional value may be defined in future and can be one of:
+ https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration
+ Clients should expect to handle additional values and treat unrecognized values in this field as os: null
type: string
required:
- name
@@ -5437,48 +5296,45 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Overhead represents the resource overhead
- associated with running a pod for a given RuntimeClass.
- This field will be autopopulated at admission time by
- the RuntimeClass admission controller. If the RuntimeClass
- admission controller is enabled, overhead must not be
- set in Pod create requests. The RuntimeClass admission
- controller will reject Pod create requests which have
- the overhead already set. If RuntimeClass is configured
- and selected in the PodSpec, Overhead will be set to
- the value defined in the corresponding RuntimeClass,
- otherwise it will remain unset and treated as zero.
- More info: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md'
+ description: |-
+ Overhead represents the resource overhead associated with running a pod for a given RuntimeClass.
+ This field will be autopopulated at admission time by the RuntimeClass admission controller. If
+ the RuntimeClass admission controller is enabled, overhead must not be set in Pod create requests.
+ The RuntimeClass admission controller will reject Pod create requests which have the overhead already
+ set. If RuntimeClass is configured and selected in the PodSpec, Overhead will be set to the value
+ defined in the corresponding RuntimeClass, otherwise it will remain unset and treated as zero.
+ More info: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md
type: object
preemptionPolicy:
- description: PreemptionPolicy is the Policy for preempting
- pods with lower priority. One of Never, PreemptLowerPriority.
+ description: |-
+ PreemptionPolicy is the Policy for preempting pods with lower priority.
+ One of Never, PreemptLowerPriority.
Defaults to PreemptLowerPriority if unset.
type: string
priority:
- description: The priority value. Various system components
- use this field to find the priority of the pod. When
- Priority Admission Controller is enabled, it prevents
- users from setting this field. The admission controller
- populates this field from PriorityClassName. The higher
- the value, the higher the priority.
+ description: |-
+ The priority value. Various system components use this field to find the
+ priority of the pod. When Priority Admission Controller is enabled, it
+ prevents users from setting this field. The admission controller populates
+ this field from PriorityClassName.
+ The higher the value, the higher the priority.
format: int32
type: integer
priorityClassName:
- description: If specified, indicates the pod's priority.
- "system-node-critical" and "system-cluster-critical"
- are two special keywords which indicate the highest
- priorities with the former being the highest priority.
- Any other name must be defined by creating a PriorityClass
- object with that name. If not specified, the pod priority
- will be default or zero if there is no default.
+ description: |-
+ If specified, indicates the pod's priority. "system-node-critical" and
+ "system-cluster-critical" are two special keywords which indicate the
+ highest priorities with the former being the highest priority. Any other
+ name must be defined by creating a PriorityClass object with that name.
+ If not specified, the pod priority will be default or zero if there is no
+ default.
type: string
readinessGates:
- description: 'If specified, all readiness gates will be
- evaluated for pod readiness. A pod is ready when all
- its containers are ready AND all conditions specified
- in the readiness gates have status equal to "True" More
- info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates'
+ description: |-
+ If specified, all readiness gates will be evaluated for pod readiness.
+ A pod is ready when all its containers are ready AND
+ all conditions specified in the readiness gates have status equal to "True"
+ More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates
items:
description: PodReadinessGate contains the reference
to a pod condition
@@ -5492,53 +5348,54 @@ spec:
type: object
type: array
resourceClaims:
- description: "ResourceClaims defines which ResourceClaims
- must be allocated and reserved before the Pod is allowed
- to start. The resources will be made available to those
- containers which consume them by name. \n This is an
- alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable."
+ description: |-
+ ResourceClaims defines which ResourceClaims must be allocated
+ and reserved before the Pod is allowed to start. The resources
+ will be made available to those containers which consume them
+ by name.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable.
items:
- description: PodResourceClaim references exactly one
- ResourceClaim through a ClaimSource. It adds a name
- to it that uniquely identifies the ResourceClaim inside
- the Pod. Containers that need access to the ResourceClaim
- reference it with this name.
+ description: |-
+ PodResourceClaim references exactly one ResourceClaim through a ClaimSource.
+ It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
+ Containers that need access to the ResourceClaim reference it with this name.
properties:
name:
- description: Name uniquely identifies this resource
- claim inside the pod. This must be a DNS_LABEL.
+ description: |-
+ Name uniquely identifies this resource claim inside the pod.
+ This must be a DNS_LABEL.
type: string
source:
description: Source describes where to find the
ResourceClaim.
properties:
resourceClaimName:
- description: ResourceClaimName is the name of
- a ResourceClaim object in the same namespace
- as this pod.
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
type: string
resourceClaimTemplateName:
- description: "ResourceClaimTemplateName is the
- name of a ResourceClaimTemplate object in
- the same namespace as this pod. \n The template
- will be used to create a new ResourceClaim,
- which will be bound to this pod. When this
- pod is deleted, the ResourceClaim will also
- be deleted. The name of the ResourceClaim
- will be -, where
- is the PodResourceClaim.Name.
- Pod validation will reject the pod if the
- concatenated name is not valid for a ResourceClaim
- (e.g. too long). \n An existing ResourceClaim
- with that name that is not owned by the pod
- will not be used for the pod to avoid using
- an unrelated resource by mistake. Scheduling
- and pod startup are then blocked until the
- unrelated ResourceClaim is removed. \n This
- field is immutable and no changes will be
- made to the corresponding ResourceClaim by
- the control plane after creating the ResourceClaim."
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
+
+
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted. The pod name and resource name, along with a
+ generated component, will be used to form a unique name for the
+ ResourceClaim, which will be recorded in pod.status.resourceClaimStatuses.
+
+
+ This field is immutable and no changes will be made to the
+ corresponding ResourceClaim by the control plane after creating the
+ ResourceClaim.
type: string
type: object
required:
@@ -5549,37 +5406,44 @@ spec:
- name
x-kubernetes-list-type: map
restartPolicy:
- description: 'Restart policy for all containers within
- the pod. One of Always, OnFailure, Never. Default to
- Always. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy'
+ description: |-
+ Restart policy for all containers within the pod.
+ One of Always, OnFailure, Never. In some contexts, only a subset of those values may be permitted.
+ Default to Always.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy
type: string
runtimeClassName:
- description: 'RuntimeClassName refers to a RuntimeClass
- object in the node.k8s.io group, which should be used
- to run this pod. If no RuntimeClass resource matches
- the named class, the pod will not be run. If unset or
- empty, the "legacy" RuntimeClass will be used, which
- is an implicit class with an empty definition that uses
- the default runtime handler. More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class'
+ description: |-
+ RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used
+ to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run.
+ If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an
+ empty definition that uses the default runtime handler.
+ More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class
type: string
schedulerName:
- description: If specified, the pod will be dispatched
- by specified scheduler. If not specified, the pod will
- be dispatched by default scheduler.
+ description: |-
+ If specified, the pod will be dispatched by specified scheduler.
+ If not specified, the pod will be dispatched by default scheduler.
type: string
schedulingGates:
- description: "SchedulingGates is an opaque list of values
- that if specified will block scheduling the pod. More
- info: https://git.k8s.io/enhancements/keps/sig-scheduling/3521-pod-scheduling-readiness.
- \n This is an alpha-level feature enabled by PodSchedulingReadiness
- feature gate."
+ description: |-
+ SchedulingGates is an opaque list of values that if specified will block scheduling the pod.
+ If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
+ scheduler will not attempt to schedule the pod.
+
+
+ SchedulingGates can only be set at pod creation time, and be removed only afterwards.
+
+
+ This is a beta feature enabled by the PodSchedulingReadiness feature gate.
items:
description: PodSchedulingGate is associated to a Pod
to guard its scheduling.
properties:
name:
- description: Name of the scheduling gate. Each scheduling
- gate must have a unique name field.
+ description: |-
+ Name of the scheduling gate.
+ Each scheduling gate must have a unique name field.
type: string
required:
- name
@@ -5589,75 +5453,73 @@ spec:
- name
x-kubernetes-list-type: map
securityContext:
- description: 'SecurityContext holds pod-level security
- attributes and common container settings. Optional:
- Defaults to empty. See type description for default
- values of each field.'
+ description: |-
+ SecurityContext holds pod-level security attributes and common container settings.
+ Optional: Defaults to empty. See type description for default values of each field.
properties:
fsGroup:
- description: "A special supplemental group that applies
- to all containers in a pod. Some volume types allow
- the Kubelet to change the ownership of that volume
- to be owned by the pod: \n 1. The owning GID will
- be the FSGroup 2. The setgid bit is set (new files
- created in the volume will be owned by FSGroup)
- 3. The permission bits are OR'd with rw-rw---- \n
- If unset, the Kubelet will not modify the ownership
- and permissions of any volume. Note that this field
- cannot be set when spec.os.name is windows."
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
fsGroupChangePolicy:
- description: 'fsGroupChangePolicy defines behavior
- of changing ownership and permission of the volume
- before being exposed inside Pod. This field will
- only apply to volume types which support fsGroup
- based ownership(and permissions). It will have no
- effect on ephemeral volume types such as: secret,
- configmaps and emptydir. Valid values are "OnRootMismatch"
- and "Always". If not specified, "Always" is used.
- Note that this field cannot be set when spec.os.name
- is windows.'
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
type: string
runAsGroup:
- description: The GID to run the entrypoint of the
- container process. Uses runtime default if unset.
- May also be set in SecurityContext. If set in both
- SecurityContext and PodSecurityContext, the value
- specified in SecurityContext takes precedence for
- that container. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
runAsNonRoot:
- description: Indicates that the container must run
- as a non-root user. If true, the Kubelet will validate
- the image at runtime to ensure that it does not
- run as UID 0 (root) and fail to start the container
- if it does. If unset or false, no such validation
- will be performed. May also be set in SecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes precedence.
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: boolean
runAsUser:
- description: The UID to run the entrypoint of the
- container process. Defaults to user specified in
- image metadata if unspecified. May also be set in
- SecurityContext. If set in both SecurityContext
- and PodSecurityContext, the value specified in SecurityContext
- takes precedence for that container. Note that this
- field cannot be set when spec.os.name is windows.
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
format: int64
type: integer
seLinuxOptions:
- description: The SELinux context to be applied to
- all containers. If unspecified, the container runtime
- will allocate a random SELinux context for each
- container. May also be set in SecurityContext. If
- set in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes precedence
- for that container. Note that this field cannot
- be set when spec.os.name is windows.
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
level:
description: Level is SELinux level label that
@@ -5677,51 +5539,48 @@ spec:
type: string
type: object
seccompProfile:
- description: The seccomp options to use by the containers
- in this pod. Note that this field cannot be set
- when spec.os.name is windows.
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
properties:
localhostProfile:
- description: localhostProfile indicates a profile
- defined in a file on the node should be used.
- The profile must be preconfigured on the node
- to work. Must be a descending path, relative
- to the kubelet's configured seccomp profile
- location. Must only be set if type is "Localhost".
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
type: string
type:
- description: "type indicates which kind of seccomp
- profile will be applied. Valid options are:
- \n Localhost - a profile defined in a file on
- the node should be used. RuntimeDefault - the
- container runtime default profile should be
- used. Unconfined - no profile should be applied."
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
type: string
required:
- type
type: object
supplementalGroups:
- description: A list of groups applied to the first
- process run in each container, in addition to the
- container's primary GID, the fsGroup (if specified),
- and group memberships defined in the container image
- for the uid of the container process. If unspecified,
- no additional groups are added to any container.
- Note that group memberships defined in the container
- image for the uid of the container process are still
- effective, even if they are not included in this
- list. Note that this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ A list of groups applied to the first process run in each container, in addition
+ to the container's primary GID, the fsGroup (if specified), and group memberships
+ defined in the container image for the uid of the container process. If unspecified,
+ no additional groups are added to any container. Note that group memberships
+ defined in the container image for the uid of the container process are still effective,
+ even if they are not included in this list.
+ Note that this field cannot be set when spec.os.name is windows.
items:
format: int64
type: integer
type: array
sysctls:
- description: Sysctls hold a list of namespaced sysctls
- used for the pod. Pods with unsupported sysctls
- (by the container runtime) might fail to launch.
- Note that this field cannot be set when spec.os.name
- is windows.
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
items:
description: Sysctl defines a kernel parameter to
be set
@@ -5738,184 +5597,158 @@ spec:
type: object
type: array
windowsOptions:
- description: The Windows specific settings applied
- to all containers. If unspecified, the options within
- a container's SecurityContext will be used. If set
- in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes precedence.
- Note that this field cannot be set when spec.os.name
- is linux.
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options within a container's SecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
properties:
gmsaCredentialSpec:
- description: GMSACredentialSpec is where the GMSA
- admission webhook (https://github.com/kubernetes-sigs/windows-gmsa)
- inlines the contents of the GMSA credential
- spec named by the GMSACredentialSpecName field.
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
type: string
gmsaCredentialSpecName:
description: GMSACredentialSpecName is the name
of the GMSA credential spec to use.
type: string
hostProcess:
- description: HostProcess determines if a container
- should be run as a 'Host Process' container.
- This field is alpha-level and will only be honored
- by components that enable the WindowsHostProcessContainers
- feature flag. Setting this field without the
- feature flag will result in errors when validating
- the Pod. All of a Pod's containers must have
- the same effective HostProcess value (it is
- not allowed to have a mix of HostProcess containers
- and non-HostProcess containers). In addition,
- if HostProcess is true then HostNetwork must
- also be set to true.
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
type: boolean
runAsUserName:
- description: The UserName in Windows to run the
- entrypoint of the container process. Defaults
- to the user specified in image metadata if unspecified.
- May also be set in PodSecurityContext. If set
- in both SecurityContext and PodSecurityContext,
- the value specified in SecurityContext takes
- precedence.
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
type: string
type: object
type: object
serviceAccount:
- description: 'DeprecatedServiceAccount is a depreciated
- alias for ServiceAccountName. Deprecated: Use serviceAccountName
- instead.'
+ description: |-
+ DeprecatedServiceAccount is a depreciated alias for ServiceAccountName.
+ Deprecated: Use serviceAccountName instead.
type: string
serviceAccountName:
- description: 'ServiceAccountName is the name of the ServiceAccount
- to use to run this pod. More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/'
+ description: |-
+ ServiceAccountName is the name of the ServiceAccount to use to run this pod.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
type: string
setHostnameAsFQDN:
- description: If true the pod's hostname will be configured
- as the pod's FQDN, rather than the leaf name (the default).
- In Linux containers, this means setting the FQDN in
- the hostname field of the kernel (the nodename field
- of struct utsname). In Windows containers, this means
- setting the registry value of hostname for the registry
- key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters
- to FQDN. If a pod does not have FQDN, this has no effect.
+ description: |-
+ If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default).
+ In Linux containers, this means setting the FQDN in the hostname field of the kernel (the nodename field of struct utsname).
+ In Windows containers, this means setting the registry value of hostname for the registry key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters to FQDN.
+ If a pod does not have FQDN, this has no effect.
Default to false.
type: boolean
shareProcessNamespace:
- description: 'Share a single process namespace between
- all of the containers in a pod. When this is set containers
- will be able to view and signal processes from other
- containers in the same pod, and the first process in
- each container will not be assigned PID 1. HostPID and
- ShareProcessNamespace cannot both be set. Optional:
- Default to false.'
+ description: |-
+ Share a single process namespace between all of the containers in a pod.
+ When this is set containers will be able to view and signal processes from other containers
+ in the same pod, and the first process in each container will not be assigned PID 1.
+ HostPID and ShareProcessNamespace cannot both be set.
+ Optional: Default to false.
type: boolean
subdomain:
- description: If specified, the fully qualified Pod hostname
- will be "...svc.". If not specified, the pod will not have a
- domainname at all.
+ description: |-
+ If specified, the fully qualified Pod hostname will be "...svc.".
+ If not specified, the pod will not have a domainname at all.
type: string
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs
- to terminate gracefully. May be decreased in delete
- request. Value must be non-negative integer. The value
- zero indicates stop immediately via the kill signal
- (no opportunity to shut down). If this value is nil,
- the default grace period will be used instead. The grace
- period is the duration in seconds after the processes
- running in the pod are sent a termination signal and
- the time when the processes are forcibly halted with
- a kill signal. Set this value longer than the expected
- cleanup time for your process. Defaults to 30 seconds.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ Defaults to 30 seconds.
format: int64
type: integer
tolerations:
description: If specified, the pod's tolerations.
items:
- description: The pod this Toleration is attached to
- tolerates any taint that matches the triple
- using the matching operator .
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
properties:
effect:
- description: Effect indicates the taint effect to
- match. Empty means match all taint effects. When
- specified, allowed values are NoSchedule, PreferNoSchedule
- and NoExecute.
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
type: string
key:
- description: Key is the taint key that the toleration
- applies to. Empty means match all taint keys.
- If the key is empty, operator must be Exists;
- this combination means to match all values and
- all keys.
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
type: string
operator:
- description: Operator represents a key's relationship
- to the value. Valid operators are Exists and Equal.
- Defaults to Equal. Exists is equivalent to wildcard
- for value, so that a pod can tolerate all taints
- of a particular category.
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
type: string
tolerationSeconds:
- description: TolerationSeconds represents the period
- of time the toleration (which must be of effect
- NoExecute, otherwise this field is ignored) tolerates
- the taint. By default, it is not set, which means
- tolerate the taint forever (do not evict). Zero
- and negative values will be treated as 0 (evict
- immediately) by the system.
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
format: int64
type: integer
value:
- description: Value is the taint value the toleration
- matches to. If the operator is Exists, the value
- should be empty, otherwise just a regular string.
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
type: string
type: object
type: array
topologySpreadConstraints:
- description: TopologySpreadConstraints describes how a
- group of pods ought to spread across topology domains.
- Scheduler will schedule pods in a way which abides by
- the constraints. All topologySpreadConstraints are ANDed.
+ description: |-
+ TopologySpreadConstraints describes how a group of pods ought to spread across topology
+ domains. Scheduler will schedule pods in a way which abides by the constraints.
+ All topologySpreadConstraints are ANDed.
items:
description: TopologySpreadConstraint specifies how
to spread matching pods among the given topology.
properties:
labelSelector:
- description: LabelSelector is used to find matching
- pods. Pods that match this label selector are
- counted to determine the number of pods in their
- corresponding topology domain.
+ description: |-
+ LabelSelector is used to find matching pods.
+ Pods that match this label selector are counted to determine the number of pods
+ in their corresponding topology domain.
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.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -5928,142 +5761,134 @@ spec:
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.
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
type: object
type: object
x-kubernetes-map-type: atomic
matchLabelKeys:
- description: MatchLabelKeys is a set of pod label
- keys to select the pods over which spreading will
- be calculated. The keys are used to lookup values
- from the incoming pod labels, those key-value
- labels are ANDed with labelSelector to select
- the group of existing pods over which spreading
- will be calculated for the incoming pod. Keys
- that don't exist in the incoming pod labels will
- be ignored. A null or empty list means only match
- against labelSelector.
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select the pods over which
+ spreading will be calculated. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are ANDed with labelSelector
+ to select the group of existing pods over which spreading will be calculated
+ for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ MatchLabelKeys cannot be set when LabelSelector isn't set.
+ Keys that don't exist in the incoming pod labels will
+ be ignored. A null or empty list means only match against labelSelector.
+
+
+ This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default).
items:
type: string
type: array
x-kubernetes-list-type: atomic
maxSkew:
- description: 'MaxSkew describes the degree to which
- pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`,
- it is the maximum permitted difference between
- the number of matching pods in the target topology
- and the global minimum. The global minimum is
- the minimum number of matching pods in an eligible
- domain or zero if the number of eligible domains
- is less than MinDomains. For example, in a 3-zone
- cluster, MaxSkew is set to 1, and pods with the
- same labelSelector spread as 2/2/1: In this case,
- the global minimum is 1. | zone1 | zone2 | zone3
- | | P P | P P | P | - if MaxSkew is 1,
- incoming pod can only be scheduled to zone3 to
- become 2/2/2; scheduling it onto zone1(zone2)
- would make the ActualSkew(3-1) on zone1(zone2)
- violate MaxSkew(1). - if MaxSkew is 2, incoming
- pod can be scheduled onto any zone. When `whenUnsatisfiable=ScheduleAnyway`,
- it is used to give higher precedence to topologies
- that satisfy it. It''s a required field. Default
- value is 1 and 0 is not allowed.'
+ description: |-
+ MaxSkew describes the degree to which pods may be unevenly distributed.
+ When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference
+ between the number of matching pods in the target topology and the global minimum.
+ The global minimum is the minimum number of matching pods in an eligible domain
+ or zero if the number of eligible domains is less than MinDomains.
+ For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same
+ labelSelector spread as 2/2/1:
+ In this case, the global minimum is 1.
+ | zone1 | zone2 | zone3 |
+ | P P | P P | P |
+ - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2;
+ scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2)
+ violate MaxSkew(1).
+ - if MaxSkew is 2, incoming pod can be scheduled onto any zone.
+ When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence
+ to topologies that satisfy it.
+ It's a required field. Default value is 1 and 0 is not allowed.
format: int32
type: integer
minDomains:
- description: "MinDomains indicates a minimum number
- of eligible domains. When the number of eligible
- domains with matching topology keys is less than
- minDomains, Pod Topology Spread treats \"global
- minimum\" as 0, and then the calculation of Skew
- is performed. And when the number of eligible
- domains with matching topology keys equals or
- greater than minDomains, this value has no effect
- on scheduling. As a result, when the number of
- eligible domains is less than minDomains, scheduler
- won't schedule more than maxSkew Pods to those
- domains. If value is nil, the constraint behaves
- as if MinDomains is equal to 1. Valid values are
- integers greater than 0. When value is not nil,
- WhenUnsatisfiable must be DoNotSchedule. \n For
- example, in a 3-zone cluster, MaxSkew is set to
- 2, MinDomains is set to 5 and pods with the same
- labelSelector spread as 2/2/2: | zone1 | zone2
- | zone3 | | P P | P P | P P | The number
- of domains is less than 5(MinDomains), so \"global
- minimum\" is treated as 0. In this situation,
- new pod with the same labelSelector cannot be
- scheduled, because computed skew will be 3(3 -
- 0) if new Pod is scheduled to any of the three
- zones, it will violate MaxSkew. \n This is a beta
- field and requires the MinDomainsInPodTopologySpread
- feature gate to be enabled (enabled by default)."
+ description: |-
+ MinDomains indicates a minimum number of eligible domains.
+ When the number of eligible domains with matching topology keys is less than minDomains,
+ Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed.
+ And when the number of eligible domains with matching topology keys equals or greater than minDomains,
+ this value has no effect on scheduling.
+ As a result, when the number of eligible domains is less than minDomains,
+ scheduler won't schedule more than maxSkew Pods to those domains.
+ If value is nil, the constraint behaves as if MinDomains is equal to 1.
+ Valid values are integers greater than 0.
+ When value is not nil, WhenUnsatisfiable must be DoNotSchedule.
+
+
+ For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same
+ labelSelector spread as 2/2/2:
+ | zone1 | zone2 | zone3 |
+ | P P | P P | P P |
+ The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0.
+ In this situation, new pod with the same labelSelector cannot be scheduled,
+ because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,
+ it will violate MaxSkew.
+
+
+ This is a beta field and requires the MinDomainsInPodTopologySpread feature gate to be enabled (enabled by default).
format: int32
type: integer
nodeAffinityPolicy:
- description: "NodeAffinityPolicy indicates how we
- will treat Pod's nodeAffinity/nodeSelector when
- calculating pod topology spread skew. Options
- are: - Honor: only nodes matching nodeAffinity/nodeSelector
- are included in the calculations. - Ignore: nodeAffinity/nodeSelector
- are ignored. All nodes are included in the calculations.
- \n If this value is nil, the behavior is equivalent
- to the Honor policy. This is a beta-level feature
- default enabled by the NodeInclusionPolicyInPodTopologySpread
- feature flag."
+ description: |-
+ NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector
+ when calculating pod topology spread skew. Options are:
+ - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
+ - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
+
+
+ If this value is nil, the behavior is equivalent to the Honor policy.
+ This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
type: string
nodeTaintsPolicy:
- description: "NodeTaintsPolicy indicates how we
- will treat node taints when calculating pod topology
- spread skew. Options are: - Honor: nodes without
- taints, along with tainted nodes for which the
- incoming pod has a toleration, are included. -
- Ignore: node taints are ignored. All nodes are
- included. \n If this value is nil, the behavior
- is equivalent to the Ignore policy. This is a
- beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread
- feature flag."
+ description: |-
+ NodeTaintsPolicy indicates how we will treat node taints when calculating
+ pod topology spread skew. Options are:
+ - Honor: nodes without taints, along with tainted nodes for which the incoming pod
+ has a toleration, are included.
+ - Ignore: node taints are ignored. All nodes are included.
+
+
+ If this value is nil, the behavior is equivalent to the Ignore policy.
+ This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
type: string
topologyKey:
- description: TopologyKey is the key of node labels.
- Nodes that have a label with this key and identical
- values are considered to be in the same topology.
- We consider each as a "bucket", and
- try to put balanced number of pods into each bucket.
- We define a domain as a particular instance of
- a topology. Also, we define an eligible domain
- as a domain whose nodes meet the requirements
- of nodeAffinityPolicy and nodeTaintsPolicy. e.g.
- If TopologyKey is "kubernetes.io/hostname", each
- Node is a domain of that topology. And, if TopologyKey
- is "topology.kubernetes.io/zone", each zone is
- a domain of that topology. It's a required field.
+ description: |-
+ TopologyKey is the key of node labels. Nodes that have a label with this key
+ and identical values are considered to be in the same topology.
+ We consider each as a "bucket", and try to put balanced number
+ of pods into each bucket.
+ We define a domain as a particular instance of a topology.
+ Also, we define an eligible domain as a domain whose nodes meet the requirements of
+ nodeAffinityPolicy and nodeTaintsPolicy.
+ e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology.
+ And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology.
+ It's a required field.
type: string
whenUnsatisfiable:
- description: 'WhenUnsatisfiable indicates how to
- deal with a pod if it doesn''t satisfy the spread
- constraint. - DoNotSchedule (default) tells the
- scheduler not to schedule it. - ScheduleAnyway
- tells the scheduler to schedule the pod in any
- location, but giving higher precedence to topologies
- that would help reduce the skew. A constraint
- is considered "Unsatisfiable" for an incoming
- pod if and only if every possible node assignment
- for that pod would violate "MaxSkew" on some topology.
- For example, in a 3-zone cluster, MaxSkew is set
- to 1, and pods with the same labelSelector spread
- as 3/1/1: | zone1 | zone2 | zone3 | | P P P | P | P |
- If WhenUnsatisfiable is set to DoNotSchedule,
- incoming pod can only be scheduled to zone2(zone3)
- to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3)
- satisfies MaxSkew(1). In other words, the cluster
- can still be imbalanced, but scheduler won''t
- make it *more* imbalanced. It''s a required field.'
+ description: |-
+ WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy
+ the spread constraint.
+ - DoNotSchedule (default) tells the scheduler not to schedule it.
+ - ScheduleAnyway tells the scheduler to schedule the pod in any location,
+ but giving higher precedence to topologies that would help reduce the
+ skew.
+ A constraint is considered "Unsatisfiable" for an incoming pod
+ if and only if every possible node assignment for that pod would violate
+ "MaxSkew" on some topology.
+ For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same
+ labelSelector spread as 3/1/1:
+ | zone1 | zone2 | zone3 |
+ | P P P | P | P |
+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled
+ to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies
+ MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler
+ won't make it *more* imbalanced.
+ It's a required field.
type: string
required:
- maxSkew
@@ -6076,47 +5901,44 @@ spec:
- whenUnsatisfiable
x-kubernetes-list-type: map
volumes:
- description: 'List of volumes that can be mounted by containers
- belonging to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes'
+ description: |-
+ List of volumes that can be mounted by containers belonging to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes
items:
description: Volume represents a named volume in a pod
that may be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an
- AWS Disk resource that is attached to a kubelet''s
- host machine and then exposed to the pod. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force
- the readOnly setting in VolumeMounts. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume).
- More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -6138,11 +5960,10 @@ spec:
in the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared:
@@ -6152,9 +5973,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -6166,9 +5987,9 @@ spec:
pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret
@@ -6187,9 +6008,9 @@ spec:
the host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors
- is a collection of Ceph monitors More info:
- https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -6199,70 +6020,72 @@ spec:
default is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults
- to false (read/write). ReadOnly here will
- force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default
- is /etc/ceph/user.secret More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef
- is reference to the authentication secret
- for User, default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the
- rados user name, default is admin More info:
- https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume
- attached and mounted on kubelets host machine.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type
- to mount. Must be a filesystem type supported
- by the host operating system. Examples: "ext4",
- "xfs", "ntfs". Implicitly inferred to be "ext4"
- if unspecified. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points
- to a secret object containing parameters used
- to connect to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the
- volume in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -6272,31 +6095,25 @@ spec:
should populate this volume
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.'
+ 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.
format: int32
type: integer
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -6305,26 +6122,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -6332,10 +6144,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -6349,47 +6161,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your
- admin for the correct name as registered in
- the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is
- passed to the associated CSI driver which
- will determine the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive
- information to pass to the CSI driver to complete
- the CSI NodePublishVolume and NodeUnpublishVolume
- calls. This field is optional, and may be
- empty if no secret is required. If the secret
- object contains more than one secret, all
- secret references are passed.
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only
- configuration for the volume. Defaults to
- false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -6399,18 +6207,15 @@ spec:
about the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on
- created files by default. Must be a Optional:
- mode bits used to set permissions on created
- files by default. Must be an octal value between
- 0000 and 0777 or a decimal value between 0
- and 511. YAML accepts both octal and decimal
- values, JSON requires decimal values for mode
- bits. Defaults to 0644. Directories within
- the path are not affected by this setting.
- This might be in conflict with other options
- that affect the file mode, like fsGroup, and
- the result can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -6440,18 +6245,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -6463,11 +6263,9 @@ spec:
must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -6496,128 +6294,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of
- storage medium should back this directory.
- The default is "" which means to use the node''s
- default medium. Must be an empty string (default)
- or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount
- of local storage required for this EmptyDir
- volume. The size limit is also applicable
- for memory medium. The maximum usage on memory
- medium EmptyDir would be the minimum value
- between the SizeLimit specified here and the
- sum of memory limits of all containers in
- a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that
- is handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it -
- it will be created before the pod starts, and
- deleted when the pod is removed. \n Use this if:
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
a) the volume is only needed while the pod runs,
- b) features of normal volumes like restoring from
- snapshot or capacity tracking are needed, c) the
- storage driver is specified through a storage
- class, and d) the storage driver supports dynamic
- volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information
- on the connection between this volume type and
- PersistentVolumeClaim). \n Use PersistentVolumeClaim
- or one of the vendor-specific APIs for volumes
- that persist for longer than the lifecycle of
- an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of
- the driver for more information. \n A pod can
- use both types of ephemeral volumes and persistent
- volumes at the same time."
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will
- be the owner of the PVC, i.e. the PVC will
- be deleted together with the pod. The name
- of the PVC will be `-`
- where `` is the name from the
- `PodSpec.Volumes` array entry. Pod validation
- will reject the pod if the concatenated name
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
is not valid for a PVC (for example, too long).
- \n An existing PVC with that name that is
- not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume
- by mistake. Starting the pod is then blocked
- until the unrelated PVC is removed. If such
- a pre-created PVC is meant to be used by the
- pod, the PVC has to updated with an owner
- reference to the pod once the pod exists.
- Normally this should not be necessary, but
- it may be useful when manually reconstructing
- a broken cluster. \n This field is read-only
- and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when
- creating it. No other fields are allowed
- and will be rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged
- into the PVC that gets created from this
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the
- desired access modes the volume should
- have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be
- used to specify either: * An existing
- VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external
- controller can support the specified
- data source, it will create a new
- volume based on the contents of the
- specified data source. When the AnyVolumeDataSource
- feature gate is enabled, dataSource
- contents will be copied to dataSourceRef,
- and dataSourceRef contents will be
- copied to dataSource when dataSourceRef.namespace
- is not specified. If the namespace
- is specified, then dataSourceRef will
- not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group
- for the resource being referenced.
- If APIGroup is not specified,
- the specified Kind must be in
- the core API group. For any other
- third-party types, APIGroup is
- required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of
@@ -6633,57 +6428,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies
- the object from which to populate
- the volume with data, if a non-empty
- volume is desired. This may be any
- object from a non-empty API group
- (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if
- the type of the specified object matches
- some installed volume populator or
- dynamic provisioner. This field will
- replace the functionality of the dataSource
- field and as such if both fields are
- non-empty, they must have the same
- value. For backwards compatibility,
- when namespace isn''t specified in
- dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to
- the same value automatically if one
- of them is empty and the other is
- non-empty. When namespace is specified
- in dataSourceRef, dataSource isn''t
- set to the same value and must be
- empty. There are three important differences
- between dataSource and dataSourceRef:
- * While dataSource only allows two
- specific types of objects, dataSourceRef
- allows any non-core object, as well
- as PersistentVolumeClaim objects.
- * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates
- an error if a disallowed value is
- specified. * While dataSource only
- allows local objects, dataSourceRef
- allows objects in any namespaces.
- (Beta) Using this field requires the
- AnyVolumeDataSource feature gate to
- be enabled. (Alpha) Using the namespace
- field of dataSourceRef requires the
- CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group
- for the resource being referenced.
- If APIGroup is not specified,
- the specified Kind must be in
- the core API group. For any other
- third-party types, APIGroup is
- required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of
@@ -6694,61 +6468,23 @@ spec:
resource being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference.
- See the ReferenceGrant documentation
- for details. (Alpha) This field
- requires the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the
- minimum resources the volume should
- have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed
- to specify resource requirements that
- are lower than previous value but
- must still be higher than capacity
- recorded in the status field of the
- claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container.
- \n This is an alpha field and
- requires enabling the DynamicResourceAllocation
- feature gate. \n This field is
- immutable. It can only be set
- for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match
- the name of one entry in
- pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -6756,9 +6492,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the
- maximum amount of compute resources
- allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -6767,14 +6503,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes
- the minimum amount of compute
- resources required. If Requests
- is omitted for a container, it
- defaults to Limits if that is
- explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -6786,11 +6519,9 @@ spec:
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.
+ 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
@@ -6798,23 +6529,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an
- array of string values.
- If the operator is In or
- NotIn, the values array
- must be non-empty. If the
- operator is Exists or DoesNotExist,
- the values array must be
- empty. This array is replaced
- during a strategic merge
- patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -6826,28 +6550,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the
- name of the StorageClass required
- by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what
- type of volume is required by the
- claim. Value of Filesystem is implied
- when not included in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding
@@ -6865,12 +6598,11 @@ spec:
then exposed to the pod.
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. TODO: how do we prevent errors
- in the filesystem from compromising the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun
@@ -6878,9 +6610,9 @@ spec:
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults
- to false (read/write). ReadOnly here will
- force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -6889,29 +6621,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world
- wide identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not
- both simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an
- exec based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver
to use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -6920,24 +6650,23 @@ spec:
holds extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults
- to false (read/write). ReadOnly here will
- force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6950,9 +6679,9 @@ spec:
on the Flocker control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset
- for Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the
@@ -6961,59 +6690,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE
- Disk resource that is attached to a kubelet''s
- host machine and then exposed to the pod. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -7026,55 +6751,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More
- info: https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can
- use host directory mounts and who can/can not
- mount host directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether
@@ -7085,30 +6816,27 @@ spec:
support iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI
- Initiator Name. If initiatorName is specified
- with iscsiInterface simultaneously, new iSCSI
- interface : will
- be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified
Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface
- Name that uses an iSCSI transport. Defaults
- to 'default' (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun
@@ -7116,34 +6844,33 @@ spec:
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for
iSCSI target and initiator authentication
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -7151,44 +6878,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS
- server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly
- setting in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -7199,11 +6933,10 @@ spec:
host machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies
@@ -7217,16 +6950,15 @@ spec:
volume attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a
@@ -7240,16 +6972,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -7258,26 +6987,115 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about
the configMap data to project
properties:
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to
a path within a volume.
@@ -7287,30 +7105,21 @@ spec:
to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -7318,10 +7127,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -7364,21 +7173,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -7392,12 +7193,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container
@@ -7432,21 +7230,14 @@ spec:
the secret data to project
properties:
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to
a path within a volume.
@@ -7456,30 +7247,21 @@ spec:
to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -7487,10 +7269,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent.
+ description: |-
+ Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify
@@ -7505,34 +7287,26 @@ spec:
project
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.
+ 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.
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
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to
- project the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -7545,30 +7319,30 @@ spec:
on the host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -7579,60 +7353,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device
- mount on the host that shares a pod''s lifetime.
- More info: https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name.
- More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -7643,10 +7425,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of
@@ -7658,21 +7441,20 @@ spec:
storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7681,9 +7463,9 @@ spec:
SSL communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the
- storage for a volume should be ThickProvisioned
- or ThinProvisioned. Default is ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
+ Default is ThinProvisioned.
type: string
storagePool:
description: storagePool is the ScaleIO Storage
@@ -7694,9 +7476,9 @@ spec:
system as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that
- is associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -7704,35 +7486,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -7741,26 +7518,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -7772,9 +7544,9 @@ spec:
the Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -7782,46 +7554,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret
- to use for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable
- name of the StorageOS volume. Volume names
- are only unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -7829,11 +7597,10 @@ spec:
volume attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage
@@ -7894,16 +7661,16 @@ spec:
be a C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables
- in the container and any service environment variables.
- If a variable cannot be resolved, the reference in
- the input string will be unchanged. Double $$ are
- reduced to a single $, which allows for escaping the
- $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce
- the string literal "$(VAR_NAME)". Escaped references
- will never be expanded, regardless of whether the
- variable exists or not. Defaults to "".'
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -7916,10 +7683,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or
@@ -7930,11 +7697,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports
- metadata.name, metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -7949,11 +7714,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container:
- only resources limits and requests (limits.cpu,
- limits.memory, limits.ephemeral-storage, requests.cpu,
- requests.memory and requests.ephemeral-storage)
- are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -7983,10 +7746,10 @@ spec:
from. Must be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its
@@ -8016,18 +7779,23 @@ spec:
job.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the
- DynamicResourceAllocation feature gate. \n This field
- is immutable. It can only be set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry
- in pod.spec.resourceClaims of the Pod where this
- field is used. It makes that resource available
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
inside a container.
type: string
required:
@@ -8044,8 +7812,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -8054,11 +7823,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of
- compute resources required. If Requests is omitted for
- a container, it defaults to Limits if that is explicitly
- specified, otherwise to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
restartPolicy:
@@ -8079,34 +7848,36 @@ spec:
within a container.
properties:
mountPath:
- description: Path within the container at which the
- volume should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts
- are propagated from the host to container and the
- other way around. When not set, MountPropagationNone
- is used. This field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's
- root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves
- similarly to SubPath but environment variable references
- $(VAR_NAME) are expanded using the container's environment.
- Defaults to "" (volume's root). SubPathExpr and SubPath
- are mutually exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -8121,37 +7892,36 @@ spec:
may be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -8173,10 +7943,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -8186,9 +7956,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -8199,9 +7969,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -8219,8 +7989,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -8230,67 +8001,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -8300,30 +8076,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -8332,25 +8103,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -8358,9 +8125,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -8374,45 +8142,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -8422,17 +8188,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -8462,16 +8226,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -8482,10 +8243,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -8513,121 +8273,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -8643,50 +8407,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -8697,58 +8447,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -8756,9 +8471,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -8767,13 +8482,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -8785,10 +8498,9 @@ spec:
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.
+ 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
@@ -8796,20 +8508,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -8821,27 +8529,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -8858,21 +8576,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -8881,28 +8598,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -8911,23 +8627,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -8940,9 +8656,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -8950,57 +8666,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -9013,54 +8727,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -9071,62 +8792,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -9134,43 +8852,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -9181,10 +8907,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -9198,15 +8924,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -9220,16 +8946,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -9238,24 +8961,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -9264,29 +9077,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -9294,10 +9099,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -9338,20 +9143,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -9364,12 +9162,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -9403,19 +9198,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -9424,29 +9214,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -9454,10 +9236,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -9470,32 +9252,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -9508,29 +9284,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -9541,60 +9318,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -9605,10 +9390,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -9619,21 +9405,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -9642,8 +9427,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -9655,9 +9440,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -9665,34 +9450,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -9701,25 +9482,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -9731,8 +9508,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -9740,44 +9518,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -9785,10 +9561,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -9947,21 +9723,20 @@ spec:
pods
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -9971,28 +9746,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -10005,28 +9778,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -10048,47 +9819,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -10101,28 +9871,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
diff --git a/charts/fluid/fluid/crds/data.fluid.io_datasets.yaml b/charts/fluid/fluid/crds/data.fluid.io_datasets.yaml
index f8b91dbbad5..7780e3e84a8 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_datasets.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_datasets.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: datasets.data.fluid.io
spec:
group: data.fluid.io
@@ -55,14 +55,19 @@ spec:
description: Dataset is the Schema for the datasets API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -89,12 +94,14 @@ spec:
type: string
type: object
mounts:
- description: Mount Points to be mounted on cache runtime.
This
- field can be empty because some runtimes don't need to mount external
- storage (e.g. Vineyard).
+ description: |-
+ Mount Points to be mounted on cache runtime.
+ This field can be empty because some runtimes don't need to mount external storage (e.g.
+ Vineyard).
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -134,10 +141,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -154,9 +162,9 @@ spec:
minItems: 1
type: array
nodeAffinity:
- description: NodeAffinity defines constraints that limit what nodes
- this dataset can be cached to. This field influences the scheduling
- of pods that use the cached dataset.
+ description: |-
+ NodeAffinity defines constraints that limit what nodes this dataset can be cached to.
+ This field influences the scheduling of pods that use the cached dataset.
properties:
required:
description: Required specifies hard node constraints that must
@@ -166,36 +174,35 @@ spec:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -208,28 +215,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -270,9 +275,9 @@ spec:
- user
type: object
placement:
- description: Manage switch for opening Multiple datasets single node
- deployment or not TODO(xieydd) In future, evaluate node resources
- and runtime resources to decide whether to turn them on
+ description: |-
+ Manage switch for opening Multiple datasets single node deployment or not
+ TODO(xieydd) In future, evaluate node resources and runtime resources to decide whether to turn them on
enum:
- Exclusive
- ""
@@ -336,40 +341,39 @@ spec:
tolerations:
description: If specified, the pod's tolerations.
items:
- description: The pod this Toleration is attached to tolerates any
- taint that matches the triple using the matching
- operator .
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
properties:
effect:
- description: Effect indicates the taint effect to match. Empty
- means match all taint effects. When specified, allowed values
- are NoSchedule, PreferNoSchedule and NoExecute.
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
type: string
key:
- description: Key is the taint key that the toleration applies
- to. Empty means match all taint keys. If the key is empty,
- operator must be Exists; this combination means to match all
- values and all keys.
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
type: string
operator:
- description: Operator represents a key's relationship to the
- value. Valid operators are Exists and Equal. Defaults to Equal.
- Exists is equivalent to wildcard for value, so that a pod
- can tolerate all taints of a particular category.
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
type: string
tolerationSeconds:
- description: TolerationSeconds represents the period of time
- the toleration (which must be of effect NoExecute, otherwise
- this field is ignored) tolerates the taint. By default, it
- is not set, which means tolerate the taint forever (do not
- evict). Zero and negative values will be treated as 0 (evict
- immediately) by the system.
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
format: int64
type: integer
value:
- description: Value is the taint value the toleration matches
- to. If the operator is Exists, the value should be empty,
- otherwise just a regular string.
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
type: string
type: object
type: array
@@ -416,14 +420,16 @@ spec:
type: object
type: array
dataBackupRef:
- description: DataBackupRef specifies the running Backup job that targets
- this Dataset. This is mainly used as a lock to prevent concurrent
- DataBackup jobs. Deprecated, use OperationRef instead
+ description: |-
+ DataBackupRef specifies the running Backup job that targets this Dataset.
+ This is mainly used as a lock to prevent concurrent DataBackup jobs.
+ Deprecated, use OperationRef instead
type: string
dataLoadRef:
- description: DataLoadRef specifies the running DataLoad job that targets
- this Dataset. This is mainly used as a lock to prevent concurrent
- DataLoad jobs. Deprecated, use OperationRef instead
+ description: |-
+ DataLoadRef specifies the running DataLoad job that targets this Dataset.
+ This is mainly used as a lock to prevent concurrent DataLoad jobs.
+ Deprecated, use OperationRef instead
type: string
datasetRef:
description: DatasetRef specifies the datasets namespaced name mounting
@@ -447,8 +453,9 @@ spec:
mounts:
description: the info of mount points have been mounted
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -488,10 +495,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -509,9 +517,9 @@ spec:
operationRef:
additionalProperties:
type: string
- description: OperationRef specifies the Operation that targets this
- Dataset. This is mainly used as a lock to prevent concurrent same
- Operation jobs.
+ description: |-
+ OperationRef specifies the Operation that targets this Dataset.
+ This is mainly used as a lock to prevent concurrent same Operation jobs.
type: object
phase:
description: 'Dataset Phase. One of the four phases: `Pending`, `Bound`,
diff --git a/charts/fluid/fluid/crds/data.fluid.io_efcruntimes.yaml b/charts/fluid/fluid/crds/data.fluid.io_efcruntimes.yaml
index 42e4f87e02d..524c737a8cc 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_efcruntimes.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_efcruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: efcruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -61,14 +61,19 @@ spec:
description: EFCRuntime is the Schema for the efcruntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -80,25 +85,22 @@ spec:
properties:
gracePeriodSeconds:
default: 60
- description: Optional duration in seconds the cache needs to clean
- gracefully. May be decreased in delete runtime request. Value
- must be non-negative integer. The value zero indicates clean
- immediately via the timeout command (no opportunity to shut
- down). If this value is nil, the default grace period will be
- used instead. The grace period is the duration in seconds after
- the processes running in the pod are sent a termination signal
- and the time when the processes are forcibly halted with timeout
- command. Set this value longer than the expected cleanup time
- for your process.
+ description: |-
+ Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request.
+ Value must be non-negative integer. The value zero indicates clean immediately via the timeout
+ command (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with timeout command.
+ Set this value longer than the expected cleanup time for your process.
format: int32
type: integer
maxRetryAttempts:
default: 3
- description: Optional max retry Attempts when cleanCache function
- returns an error after execution, runtime attempts to run it
- three more times by default. With Maximum Retry Attempts, you
- can customize the maximum number of retries. This gives you
- the option to continue processing retries.
+ description: |-
+ Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts
+ to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number
+ of retries. This gives you the option to continue processing retries.
format: int32
type: integer
type: object
@@ -106,11 +108,12 @@ spec:
description: The component spec of EFC Fuse
properties:
cleanPolicy:
- description: 'CleanPolicy decides when to clean EFC Fuse pods.
+ description: |-
+ CleanPolicy decides when to clean EFC Fuse pods.
Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once th fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnRuntimeDeleted'
+ OnDemand cleans fuse pod once th fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnRuntimeDeleted
type: string
networkMode:
description: Whether to use hostnetwork or not
@@ -122,9 +125,9 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
podMetadata:
description: PodMetadata defines labels and annotations that will
@@ -147,24 +150,31 @@ spec:
description: Configurable properties for EFC fuse
type: object
resources:
- description: Resources that will be requested by EFC Fuse.
-
Resources are not allowed for ephemeral containers. Ephemeral
- containers use spare resources already allocated to the pod.
+ description: |-
+ Resources that will be requested by EFC Fuse.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -180,8 +190,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -190,10 +201,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
version:
@@ -235,7 +247,9 @@ spec:
description: The component spec of EFC master
properties:
disabled:
- description: Enabled or Disabled for the components. Default enable.
+ description: |-
+ Enabled or Disabled for the components.
+ Default enable.
type: boolean
networkMode:
description: Whether to use host network or not.
@@ -276,32 +290,39 @@ spec:
description: Configurable properties for the EFC component.
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the EFC component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the EFC component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -317,8 +338,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -327,10 +349,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
version:
@@ -353,8 +376,9 @@ spec:
description: Operating system optimization for EFC
properties:
enabled:
- description: Enable operating system optimization not enabled
- by default.
+ description: |-
+ Enable operating system optimization
+ not enabled by default.
type: boolean
osVersion:
description: Specific operating system version that can have optimization.
@@ -385,9 +409,9 @@ spec:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -404,71 +428,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -490,10 +510,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -503,9 +523,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -516,9 +536,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -536,8 +556,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -547,67 +568,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -617,30 +643,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -649,25 +670,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -675,9 +692,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -691,45 +709,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -739,17 +755,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -779,16 +793,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -799,10 +810,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -830,121 +840,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -960,50 +974,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1014,58 +1014,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1073,9 +1038,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1084,13 +1049,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1102,10 +1065,9 @@ spec:
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.
+ 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
@@ -1113,20 +1075,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1138,27 +1096,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1175,21 +1143,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -1198,28 +1165,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1228,23 +1194,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1257,9 +1223,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -1267,57 +1233,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -1330,54 +1294,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -1388,62 +1359,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -1451,39 +1419,45 @@ spec:
- targetPortal
type: object
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -1494,10 +1468,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -1511,15 +1485,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -1533,16 +1507,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -1551,24 +1522,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1577,29 +1638,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1607,10 +1660,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -1651,20 +1704,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1677,12 +1723,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -1716,19 +1759,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1737,29 +1775,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1767,10 +1797,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -1783,32 +1813,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -1821,29 +1845,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -1854,60 +1879,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -1918,10 +1951,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -1932,21 +1966,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1955,8 +1988,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -1968,9 +2001,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -1978,34 +2011,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -2014,25 +2043,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2044,8 +2069,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2053,44 +2079,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2098,10 +2122,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -2122,9 +2146,9 @@ spec:
type: object
volumeType:
default: hostPath
- description: 'VolumeType is the volume type of the tier.
- Should be one of the three types: `hostPath`, `emptyDir`
- and `volumeTemplate`. If not set, defaults to hostPath.'
+ description: |-
+ VolumeType is the volume type of the tier. Should be one of the three types: `hostPath`, `emptyDir` and `volumeTemplate`.
+ If not set, defaults to hostPath.
enum:
- hostPath
- emptyDir
@@ -2138,7 +2162,9 @@ spec:
description: The component spec of EFC worker
properties:
disabled:
- description: Enabled or Disabled for the components. Default enable.
+ description: |-
+ Enabled or Disabled for the components.
+ Default enable.
type: boolean
networkMode:
description: Whether to use host network or not.
@@ -2179,32 +2205,39 @@ spec:
description: Configurable properties for the EFC component.
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the EFC component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the EFC component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -2220,8 +2253,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -2230,10 +2264,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
version:
@@ -2268,21 +2303,20 @@ spec:
affinity including node selector
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -2292,28 +2326,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2326,28 +2358,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2369,47 +2399,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2422,28 +2451,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2500,55 +2527,58 @@ spec:
type: object
type: array
currentFuseNumberScheduled:
- description: The total number of nodes that can be running the runtime
- Fuse pod (including nodes correctly running the runtime Fuse pod).
+ description: |-
+ The total number of nodes that can be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
currentMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
currentWorkerNumberScheduled:
- description: The total number of nodes that can be running the runtime
- worker pod (including nodes correctly running the runtime worker
- pod).
+ description: |-
+ The total number of nodes that can be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
desiredFuseNumberScheduled:
- description: The total number of nodes that should be running the
- runtime Fuse pod (including nodes correctly running the runtime
- Fuse pod).
+ description: |-
+ The total number of nodes that should be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
desiredMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
desiredWorkerNumberScheduled:
- description: The total number of nodes that should be running the
- runtime worker pod (including nodes correctly running the runtime
- worker pod).
+ description: |-
+ The total number of nodes that should be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
fuseNumberAvailable:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
+ description: |-
+ The number of nodes that should be running the
+ runtime Fuse pod and have one or more of the runtime Fuse pod running and
available (ready for at least spec.minReadySeconds)
format: int32
type: integer
fuseNumberReady:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
- ready.
+ description: |-
+ The number of nodes that should be running the runtime Fuse pod and have one
+ or more of the runtime Fuse pod running and ready.
format: int32
type: integer
fuseNumberUnavailable:
- description: The number of nodes that should be running the runtime
- fuse pod and have none of the runtime fuse pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime fuse pod and have none of the runtime fuse pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
@@ -2559,9 +2589,9 @@ spec:
description: Reason for the condition's last transition.
type: string
masterNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have zero or more of the runtime master pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have zero
+ or more of the runtime master pod running and ready.
format: int32
type: integer
masterPhase:
@@ -2571,16 +2601,18 @@ spec:
description: Reason for Master's condition transition
type: string
mountTime:
- description: MountTime represents time last mount happened if Mounttime
- is earlier than master starting time, remount will be required
+ description: |-
+ MountTime represents time last mount happened
+ if Mounttime is earlier than master starting time, remount will be required
format: date-time
type: string
mounts:
description: MountPoints represents the mount points specified in
the bounded dataset
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -2620,10 +2652,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -2649,20 +2682,22 @@ spec:
description: config map used to set configurations
type: string
workerNumberAvailable:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and available (ready for at least spec.minReadySeconds)
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have one or more of the runtime worker pod running and
+ available (ready for at least spec.minReadySeconds)
format: int32
type: integer
workerNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have one
+ or more of the runtime worker pod running and ready.
format: int32
type: integer
workerNumberUnavailable:
- description: The number of nodes that should be running the runtime
- worker pod and have none of the runtime worker pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have none of the runtime worker pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
diff --git a/charts/fluid/fluid/crds/data.fluid.io_goosefsruntimes.yaml b/charts/fluid/fluid/crds/data.fluid.io_goosefsruntimes.yaml
index f186d47edbb..715b6138754 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_goosefsruntimes.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_goosefsruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: goosefsruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -65,14 +65,19 @@ spec:
description: GooseFSRuntime is the Schema for the goosefsruntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -85,10 +90,11 @@ spec:
annotations:
additionalProperties:
type: string
- description: 'Annotations is an unstructured key value map stored
- with a resource that may be set by external tools to store and
- retrieve arbitrary metadata. They are not queryable and should
- be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
+ description: |-
+ Annotations is an unstructured key value map stored with a resource that may be
+ set by external tools to store and retrieve arbitrary metadata. They are not
+ queryable and should be preserved when modifying objects.
+ More info: http://kubernetes.io/docs/user-guide/annotations
type: object
enabled:
description: Enabled or Disabled for the components. For now,
@@ -119,37 +125,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the GOOSEFS component.
-
Refer to GOOSEFS
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the GOOSEFS component.
+ Refer to GOOSEFS Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the GooseFS component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the GooseFS component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -165,8 +178,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -175,10 +189,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -187,25 +202,22 @@ spec:
properties:
gracePeriodSeconds:
default: 60
- description: Optional duration in seconds the cache needs to clean
- gracefully. May be decreased in delete runtime request. Value
- must be non-negative integer. The value zero indicates clean
- immediately via the timeout command (no opportunity to shut
- down). If this value is nil, the default grace period will be
- used instead. The grace period is the duration in seconds after
- the processes running in the pod are sent a termination signal
- and the time when the processes are forcibly halted with timeout
- command. Set this value longer than the expected cleanup time
- for your process.
+ description: |-
+ Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request.
+ Value must be non-negative integer. The value zero indicates clean immediately via the timeout
+ command (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with timeout command.
+ Set this value longer than the expected cleanup time for your process.
format: int32
type: integer
maxRetryAttempts:
default: 3
- description: Optional max retry Attempts when cleanCache function
- returns an error after execution, runtime attempts to run it
- three more times by default. With Maximum Retry Attempts, you
- can customize the maximum number of retries. This gives you
- the option to continue processing retries.
+ description: |-
+ Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts
+ to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number
+ of retries. This gives you the option to continue processing retries.
format: int32
type: integer
type: object
@@ -223,8 +235,9 @@ spec:
type: integer
type: object
disablePrometheus:
- description: Disable monitoring for GooseFS Runtime Prometheus is
- enabled by default
+ description: |-
+ Disable monitoring for GooseFS Runtime
+ Prometheus is enabled by default
type: boolean
fuse:
description: The component spec of GooseFS Fuse
@@ -232,10 +245,11 @@ spec:
annotations:
additionalProperties:
type: string
- description: 'Annotations is an unstructured key value map stored
- with a resource that may be set by external tools to store and
- retrieve arbitrary metadata. They are not queryable and should
- be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
+ description: |-
+ Annotations is an unstructured key value map stored with a resource that may be
+ set by external tools to store and retrieve arbitrary metadata. They are not
+ queryable and should be preserved when modifying objects.
+ More info: http://kubernetes.io/docs/user-guide/annotations
type: object
args:
description: Arguments that will be passed to GooseFS Fuse
@@ -243,11 +257,12 @@ spec:
type: string
type: array
cleanPolicy:
- description: 'CleanPolicy decides when to clean GooseFS Fuse pods.
+ description: |-
+ CleanPolicy decides when to clean GooseFS Fuse pods.
Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once th fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnRuntimeDeleted'
+ OnDemand cleans fuse pod once th fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnRuntimeDeleted
type: string
env:
additionalProperties:
@@ -273,37 +288,43 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
properties:
additionalProperties:
type: string
- description: Configurable properties for the GOOSEFS component.
-
Refer to GOOSEFS
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the GOOSEFS component.
+ Refer to GOOSEFS Configuration Properties for more info
type: object
resources:
- description: Resources that will be requested by GooseFS Fuse.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by GooseFS Fuse.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -319,8 +340,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -329,10 +351,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -352,12 +375,11 @@ spec:
type: string
type: object
hadoopConfig:
- description: Name of the configMap used to support HDFS configurations
- when using HDFS as GooseFS's UFS. The configMap must be in the same
- namespace with the GooseFSRuntime. The configMap should contain
- user-specific HDFS conf files in it. For now, only "hdfs-site.xml"
- and "core-site.xml" are supported. It must take the filename of
- the conf file as the key and content of the file as the value.
+ description: |-
+ Name of the configMap used to support HDFS configurations when using HDFS as GooseFS's UFS. The configMap
+ must be in the same namespace with the GooseFSRuntime. The configMap should contain user-specific HDFS conf files in it.
+ For now, only "hdfs-site.xml" and "core-site.xml" are supported. It must take the filename of the conf file as the key and content
+ of the file as the value.
type: string
initUsers:
description: The spec of init users
@@ -381,25 +403,31 @@ spec:
2.3.0-SNAPSHOT)
type: string
resources:
- description: Resources that will be requested by initialize the
- users for runtime.
Resources are not allowed for ephemeral
- containers. Ephemeral containers use spare resources already
- allocated to the pod.
+ description: |-
+ Resources that will be requested by initialize the users for runtime.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -415,8 +443,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -425,10 +454,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -438,10 +468,11 @@ spec:
annotations:
additionalProperties:
type: string
- description: 'Annotations is an unstructured key value map stored
- with a resource that may be set by external tools to store and
- retrieve arbitrary metadata. They are not queryable and should
- be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
+ description: |-
+ Annotations is an unstructured key value map stored with a resource that may be
+ set by external tools to store and retrieve arbitrary metadata. They are not
+ queryable and should be preserved when modifying objects.
+ More info: http://kubernetes.io/docs/user-guide/annotations
type: object
enabled:
description: Enabled or Disabled for the components. For now,
@@ -472,37 +503,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the GOOSEFS component.
-
Refer to GOOSEFS
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the GOOSEFS component.
+ Refer to GOOSEFS Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the GooseFS component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the GooseFS component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -518,8 +556,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -528,10 +567,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -541,10 +581,11 @@ spec:
annotations:
additionalProperties:
type: string
- description: 'Annotations is an unstructured key value map stored
- with a resource that may be set by external tools to store and
- retrieve arbitrary metadata. They are not queryable and should
- be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
+ description: |-
+ Annotations is an unstructured key value map stored with a resource that may be
+ set by external tools to store and retrieve arbitrary metadata. They are not
+ queryable and should be preserved when modifying objects.
+ More info: http://kubernetes.io/docs/user-guide/annotations
type: object
enabled:
description: Enabled or Disabled for the components. For now,
@@ -575,37 +616,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the GOOSEFS component.
-
Refer to GOOSEFS
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the GOOSEFS component.
+ Refer to GOOSEFS Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the GooseFS component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the GooseFS component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -621,8 +669,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -631,10 +680,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -649,10 +699,11 @@ spec:
annotations:
additionalProperties:
type: string
- description: 'Annotations is an unstructured key value map stored
- with a resource that may be set by external tools to store and
- retrieve arbitrary metadata. They are not queryable and should
- be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
+ description: |-
+ Annotations is an unstructured key value map stored with a resource that may be
+ set by external tools to store and retrieve arbitrary metadata. They are not
+ queryable and should be preserved when modifying objects.
+ More info: http://kubernetes.io/docs/user-guide/annotations
type: object
enabled:
description: Enabled or Disabled for the components. For now,
@@ -683,37 +734,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the GOOSEFS component.
-
Refer to GOOSEFS
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the GOOSEFS component.
+ Refer to GOOSEFS Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the GooseFS component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the GooseFS component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -729,8 +787,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -739,28 +798,30 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
properties:
additionalProperties:
type: string
- description: Configurable properties for the GOOSEFS component.
- Refer to GOOSEFS
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the GOOSEFS component.
+ Refer to GOOSEFS Configuration Properties for more info
type: object
replicas:
description: The replicas of the worker, need to be specified
format: int32
type: integer
runAs:
- description: Manage the user to run GooseFS Runtime GooseFS support
- POSIX-ACL and Apache Ranger to manager authorization TODO(chrisydxie@tencent.com)
- Support Apache Ranger.
+ description: |-
+ Manage the user to run GooseFS Runtime
+ GooseFS support POSIX-ACL and Apache Ranger to manager authorization
+ TODO(chrisydxie@tencent.com) Support Apache Ranger.
properties:
gid:
description: The gid to run the alluxio runtime
@@ -788,9 +849,9 @@ spec:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -807,71 +868,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -893,10 +950,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -906,9 +963,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -919,9 +976,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -939,8 +996,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -950,67 +1008,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -1020,30 +1083,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -1052,25 +1110,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1078,9 +1132,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -1094,45 +1149,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -1142,17 +1195,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -1182,16 +1233,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1202,10 +1250,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -1233,121 +1280,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1363,50 +1414,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1417,58 +1454,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1476,9 +1478,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1487,13 +1489,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1505,10 +1505,9 @@ spec:
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.
+ 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
@@ -1516,20 +1515,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1541,27 +1536,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1578,21 +1583,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -1601,28 +1605,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1631,23 +1634,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1660,9 +1663,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -1670,57 +1673,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -1733,54 +1734,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -1791,62 +1799,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -1854,39 +1859,45 @@ spec:
- targetPortal
type: object
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -1897,10 +1908,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -1914,15 +1925,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -1936,16 +1947,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -1954,24 +1962,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1980,29 +2078,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2010,10 +2100,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -2054,20 +2144,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -2080,12 +2163,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -2119,19 +2199,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -2140,29 +2215,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2170,10 +2237,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -2186,32 +2253,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -2224,29 +2285,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -2257,60 +2319,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -2321,10 +2391,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -2335,21 +2406,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2358,8 +2428,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -2371,9 +2441,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -2381,34 +2451,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -2417,25 +2483,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2447,8 +2509,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2456,44 +2519,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2501,10 +2562,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -2525,9 +2586,9 @@ spec:
type: object
volumeType:
default: hostPath
- description: 'VolumeType is the volume type of the tier.
- Should be one of the three types: `hostPath`, `emptyDir`
- and `volumeTemplate`. If not set, defaults to hostPath.'
+ description: |-
+ VolumeType is the volume type of the tier. Should be one of the three types: `hostPath`, `emptyDir` and `volumeTemplate`.
+ If not set, defaults to hostPath.
enum:
- hostPath
- emptyDir
@@ -2543,10 +2604,11 @@ spec:
annotations:
additionalProperties:
type: string
- description: 'Annotations is an unstructured key value map stored
- with a resource that may be set by external tools to store and
- retrieve arbitrary metadata. They are not queryable and should
- be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
+ description: |-
+ Annotations is an unstructured key value map stored with a resource that may be
+ set by external tools to store and retrieve arbitrary metadata. They are not
+ queryable and should be preserved when modifying objects.
+ More info: http://kubernetes.io/docs/user-guide/annotations
type: object
enabled:
description: Enabled or Disabled for the components. For now,
@@ -2577,37 +2639,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the GOOSEFS component.
-
Refer to GOOSEFS
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the GOOSEFS component.
+ Refer to GOOSEFS Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the GooseFS component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the GooseFS component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -2623,8 +2692,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -2633,10 +2703,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -2656,21 +2727,20 @@ spec:
affinity including node selector
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -2680,28 +2750,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2714,28 +2782,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2757,47 +2823,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2810,28 +2875,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -2888,55 +2951,58 @@ spec:
type: object
type: array
currentFuseNumberScheduled:
- description: The total number of nodes that can be running the runtime
- Fuse pod (including nodes correctly running the runtime Fuse pod).
+ description: |-
+ The total number of nodes that can be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
currentMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
currentWorkerNumberScheduled:
- description: The total number of nodes that can be running the runtime
- worker pod (including nodes correctly running the runtime worker
- pod).
+ description: |-
+ The total number of nodes that can be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
desiredFuseNumberScheduled:
- description: The total number of nodes that should be running the
- runtime Fuse pod (including nodes correctly running the runtime
- Fuse pod).
+ description: |-
+ The total number of nodes that should be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
desiredMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
desiredWorkerNumberScheduled:
- description: The total number of nodes that should be running the
- runtime worker pod (including nodes correctly running the runtime
- worker pod).
+ description: |-
+ The total number of nodes that should be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
fuseNumberAvailable:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
+ description: |-
+ The number of nodes that should be running the
+ runtime Fuse pod and have one or more of the runtime Fuse pod running and
available (ready for at least spec.minReadySeconds)
format: int32
type: integer
fuseNumberReady:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
- ready.
+ description: |-
+ The number of nodes that should be running the runtime Fuse pod and have one
+ or more of the runtime Fuse pod running and ready.
format: int32
type: integer
fuseNumberUnavailable:
- description: The number of nodes that should be running the runtime
- fuse pod and have none of the runtime fuse pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime fuse pod and have none of the runtime fuse pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
@@ -2947,9 +3013,9 @@ spec:
description: Reason for the condition's last transition.
type: string
masterNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have zero or more of the runtime master pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have zero
+ or more of the runtime master pod running and ready.
format: int32
type: integer
masterPhase:
@@ -2959,16 +3025,18 @@ spec:
description: Reason for Master's condition transition
type: string
mountTime:
- description: MountTime represents time last mount happened if Mounttime
- is earlier than master starting time, remount will be required
+ description: |-
+ MountTime represents time last mount happened
+ if Mounttime is earlier than master starting time, remount will be required
format: date-time
type: string
mounts:
description: MountPoints represents the mount points specified in
the bounded dataset
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -3008,10 +3076,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -3037,20 +3106,22 @@ spec:
description: config map used to set configurations
type: string
workerNumberAvailable:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and available (ready for at least spec.minReadySeconds)
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have one or more of the runtime worker pod running and
+ available (ready for at least spec.minReadySeconds)
format: int32
type: integer
workerNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have one
+ or more of the runtime worker pod running and ready.
format: int32
type: integer
workerNumberUnavailable:
- description: The number of nodes that should be running the runtime
- worker pod and have none of the runtime worker pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have none of the runtime worker pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
diff --git a/charts/fluid/fluid/crds/data.fluid.io_jindoruntimes.yaml b/charts/fluid/fluid/crds/data.fluid.io_jindoruntimes.yaml
index 87acbddc383..c561e3745f5 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_jindoruntimes.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_jindoruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: jindoruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -61,14 +61,19 @@ spec:
description: JindoRuntime is the Schema for the jindoruntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -80,25 +85,22 @@ spec:
properties:
gracePeriodSeconds:
default: 60
- description: Optional duration in seconds the cache needs to clean
- gracefully. May be decreased in delete runtime request. Value
- must be non-negative integer. The value zero indicates clean
- immediately via the timeout command (no opportunity to shut
- down). If this value is nil, the default grace period will be
- used instead. The grace period is the duration in seconds after
- the processes running in the pod are sent a termination signal
- and the time when the processes are forcibly halted with timeout
- command. Set this value longer than the expected cleanup time
- for your process.
+ description: |-
+ Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request.
+ Value must be non-negative integer. The value zero indicates clean immediately via the timeout
+ command (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with timeout command.
+ Set this value longer than the expected cleanup time for your process.
format: int32
type: integer
maxRetryAttempts:
default: 3
- description: Optional max retry Attempts when cleanCache function
- returns an error after execution, runtime attempts to run it
- three more times by default. With Maximum Retry Attempts, you
- can customize the maximum number of retries. This gives you
- the option to continue processing retries.
+ description: |-
+ Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts
+ to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number
+ of retries. This gives you the option to continue processing retries.
format: int32
type: integer
type: object
@@ -111,11 +113,12 @@ spec:
type: string
type: array
cleanPolicy:
- description: 'CleanPolicy decides when to clean JindoFS Fuse pods.
+ description: |-
+ CleanPolicy decides when to clean JindoFS Fuse pods.
Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once th fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnRuntimeDeleted'
+ OnDemand cleans fuse pod once th fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnRuntimeDeleted
type: string
disabled:
description: If disable JindoFS fuse
@@ -139,9 +142,10 @@ spec:
labels:
additionalProperties:
type: string
- description: 'Labels will be added on all the JindoFS pods. DEPRECATED:
- this is a deprecated field. Please use PodMetadata.Labels instead.
- Note: this field is set to be exclusive with PodMetadata.Labels'
+ description: |-
+ Labels will be added on all the JindoFS pods.
+ DEPRECATED: this is a deprecated field. Please use PodMetadata.Labels instead.
+ Note: this field is set to be exclusive with PodMetadata.Labels
type: object
logConfig:
additionalProperties:
@@ -150,9 +154,9 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
podMetadata:
description: PodMetadata defines labels and annotations that will
@@ -175,24 +179,31 @@ spec:
description: Configurable properties for Jindo System.
type: object
resources:
- description: Resources that will be requested by Jindo Fuse.
-
Resources are not allowed for ephemeral containers. Ephemeral
- containers use spare resources already allocated to the pod.
+ description: |-
+ Resources that will be requested by Jindo Fuse.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -208,8 +219,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -218,61 +230,59 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
tolerations:
description: If specified, the pod's tolerations.
items:
- description: The pod this Toleration is attached to tolerates
- any taint that matches the triple using
- the matching operator .
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
properties:
effect:
- description: Effect indicates the taint effect to match.
- Empty means match all taint effects. When specified, allowed
- values are NoSchedule, PreferNoSchedule and NoExecute.
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
type: string
key:
- description: Key is the taint key that the toleration applies
- to. Empty means match all taint keys. If the key is empty,
- operator must be Exists; this combination means to match
- all values and all keys.
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
type: string
operator:
- description: Operator represents a key's relationship to
- the value. Valid operators are Exists and Equal. Defaults
- to Equal. Exists is equivalent to wildcard for value,
- so that a pod can tolerate all taints of a particular
- category.
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
type: string
tolerationSeconds:
- description: TolerationSeconds represents the period of
- time the toleration (which must be of effect NoExecute,
- otherwise this field is ignored) tolerates the taint.
- By default, it is not set, which means tolerate the taint
- forever (do not evict). Zero and negative values will
- be treated as 0 (evict immediately) by the system.
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
format: int64
type: integer
value:
- description: Value is the taint value the toleration matches
- to. If the operator is Exists, the value should be empty,
- otherwise just a regular string.
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
type: string
type: object
type: array
type: object
hadoopConfig:
- description: Name of the configMap used to support HDFS configurations
- when using HDFS as Jindo's UFS. The configMap must be in the same
- namespace with the JindoRuntime. The configMap should contain user-specific
- HDFS conf files in it. For now, only "hdfs-site.xml" and "core-site.xml"
- are supported. It must take the filename of the conf file as the
- key and content of the file as the value.
+ description: |-
+ Name of the configMap used to support HDFS configurations when using HDFS as Jindo's UFS. The configMap
+ must be in the same namespace with the JindoRuntime. The configMap should contain user-specific HDFS conf files in it.
+ For now, only "hdfs-site.xml" and "core-site.xml" are supported. It must take the filename of the conf file as the key and content
+ of the file as the value.
type: string
jindoVersion:
description: The version information that instructs fluid to orchestrate
@@ -292,9 +302,10 @@ spec:
labels:
additionalProperties:
type: string
- description: 'Labels will be added on all the JindoFS pods. DEPRECATED:
- this is a deprecated field. Please use PodMetadata.Labels instead.
- Note: this field is set to be exclusive with PodMetadata.Labels'
+ description: |-
+ Labels will be added on all the JindoFS pods.
+ DEPRECATED: this is a deprecated field. Please use PodMetadata.Labels instead.
+ Note: this field is set to be exclusive with PodMetadata.Labels
type: object
logConfig:
additionalProperties:
@@ -315,9 +326,10 @@ spec:
labels:
additionalProperties:
type: string
- description: 'Labels will be added on JindoFS Master or Worker
- pods. DEPRECATED: This is a deprecated field. Please use PodMetadata
- instead. Note: this field is set to be exclusive with PodMetadata.Labels'
+ description: |-
+ Labels will be added on JindoFS Master or Worker pods.
+ DEPRECATED: This is a deprecated field. Please use PodMetadata instead.
+ Note: this field is set to be exclusive with PodMetadata.Labels
type: object
nodeSelector:
additionalProperties:
@@ -351,32 +363,39 @@ spec:
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Jindo component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Jindo component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -392,8 +411,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -402,50 +422,49 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
tolerations:
description: If specified, the pod's tolerations.
items:
- description: The pod this Toleration is attached to tolerates
- any taint that matches the triple using
- the matching operator .
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
properties:
effect:
- description: Effect indicates the taint effect to match.
- Empty means match all taint effects. When specified, allowed
- values are NoSchedule, PreferNoSchedule and NoExecute.
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
type: string
key:
- description: Key is the taint key that the toleration applies
- to. Empty means match all taint keys. If the key is empty,
- operator must be Exists; this combination means to match
- all values and all keys.
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
type: string
operator:
- description: Operator represents a key's relationship to
- the value. Valid operators are Exists and Equal. Defaults
- to Equal. Exists is equivalent to wildcard for value,
- so that a pod can tolerate all taints of a particular
- category.
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
type: string
tolerationSeconds:
- description: TolerationSeconds represents the period of
- time the toleration (which must be of effect NoExecute,
- otherwise this field is ignored) tolerates the taint.
- By default, it is not set, which means tolerate the taint
- forever (do not evict). Zero and negative values will
- be treated as 0 (evict immediately) by the system.
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
format: int64
type: integer
value:
- description: Value is the taint value the toleration matches
- to. If the operator is Exists, the value should be empty,
- otherwise just a regular string.
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
type: string
type: object
type: array
@@ -457,33 +476,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -553,9 +575,9 @@ spec:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -572,71 +594,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -658,10 +676,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -671,9 +689,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -684,9 +702,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -704,8 +722,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -715,67 +734,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -785,30 +809,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -817,25 +836,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -843,9 +858,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -859,45 +875,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -907,17 +921,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -947,16 +959,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -967,10 +976,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -998,121 +1006,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1128,50 +1140,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1182,58 +1180,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1241,9 +1204,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1252,13 +1215,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1270,10 +1231,9 @@ spec:
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.
+ 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
@@ -1281,20 +1241,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1306,27 +1262,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1343,21 +1309,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -1366,28 +1331,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1396,23 +1360,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1425,9 +1389,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -1435,57 +1399,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -1498,54 +1460,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -1556,62 +1525,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -1619,39 +1585,45 @@ spec:
- targetPortal
type: object
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -1662,10 +1634,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -1679,15 +1651,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -1701,16 +1673,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -1719,24 +1688,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1745,29 +1804,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1775,10 +1826,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -1819,20 +1870,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1845,12 +1889,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -1884,19 +1925,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1905,29 +1941,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1935,10 +1963,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -1951,32 +1979,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -1989,29 +2011,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -2022,60 +2045,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -2086,10 +2117,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -2100,21 +2132,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2123,8 +2154,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -2136,9 +2167,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -2146,34 +2177,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -2182,25 +2209,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2212,8 +2235,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2221,44 +2245,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2266,10 +2288,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -2290,9 +2312,9 @@ spec:
type: object
volumeType:
default: hostPath
- description: 'VolumeType is the volume type of the tier.
- Should be one of the three types: `hostPath`, `emptyDir`
- and `volumeTemplate`. If not set, defaults to hostPath.'
+ description: |-
+ VolumeType is the volume type of the tier. Should be one of the three types: `hostPath`, `emptyDir` and `volumeTemplate`.
+ If not set, defaults to hostPath.
enum:
- hostPath
- emptyDir
@@ -2312,34 +2334,36 @@ spec:
be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the readOnly
- setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent disk
- resource in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -2361,10 +2385,10 @@ spec:
storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -2373,8 +2397,9 @@ spec:
disk (only in managed availability set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -2385,8 +2410,9 @@ spec:
on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that contains
@@ -2404,8 +2430,9 @@ spec:
shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is a collection
- of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -2414,61 +2441,72 @@ spec:
rather than the full Ceph tree, default is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile is the
- path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is reference
- to the authentication secret for User, default is empty.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados user name,
- default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached and
- mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount. Must
- be a filesystem type supported by the host operating system.
- Examples: "ext4", "xfs", "ntfs". Implicitly inferred to
- be "ext4" if unspecified. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a secret
- object containing parameters used to connect to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume in cinder.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -2478,27 +2516,25 @@ spec:
this volume
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.'
+ 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.
format: int32
type: integer
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -2506,22 +2542,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2529,8 +2564,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap or its
@@ -2544,41 +2581,43 @@ spec:
feature).
properties:
driver:
- description: driver is the name of the CSI driver that handles
- this volume. Consult with your admin for the correct name
- as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs", "ntfs".
- If not provided, the empty value is passed to the associated
- CSI driver which will determine the default filesystem
- to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference to the
- secret object containing sensitive information to pass
- to the CSI driver to complete the CSI NodePublishVolume
- and NodeUnpublishVolume calls. This field is optional,
- and may be empty if no secret is required. If the secret
- object contains more than one secret, all secret references
- are passed.
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific properties
- that are passed to the CSI driver. Consult your driver's
- documentation for supported values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -2588,16 +2627,15 @@ spec:
that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created files
- by default. Must be a Optional: mode bits used to set
- permissions on created files by default. Must be an octal
- value between 0000 and 0777 or a decimal value between
- 0 and 511. YAML accepts both octal and decimal values,
- JSON requires decimal values for mode bits. Defaults to
- 0644. Directories within the path are not affected by
- this setting. This might be in conflict with other options
- that affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -2624,15 +2662,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -2643,10 +2679,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -2673,106 +2708,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory that
- shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage medium
- should back this directory. The default is "" which means
- to use the node''s default medium. Must be an empty string
- (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local storage
- required for this EmptyDir volume. The size limit is also
- applicable for memory medium. The maximum usage on memory
- medium EmptyDir would be the minimum value between the
- SizeLimit specified here and the sum of memory limits
- of all containers in a pod. The default is nil which means
- that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is handled
- by a cluster storage driver. The volume's lifecycle is tied
- to the pod that defines it - it will be created before the
- pod starts, and deleted when the pod is removed. \n Use this
- if: a) the volume is only needed while the pod runs, b) features
- of normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified through
- a storage class, and d) the storage driver supports dynamic
- volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource
- for more information on the connection between this volume
- type and PersistentVolumeClaim). \n Use PersistentVolumeClaim
- or one of the vendor-specific APIs for volumes that persist
- for longer than the lifecycle of an individual pod. \n Use
- CSI for light-weight local ephemeral volumes if the CSI driver
- is meant to be used that way - see the documentation of the
- driver for more information. \n A pod can use both types of
- ephemeral volumes and persistent volumes at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone PVC to
- provision the volume. The pod in which this EphemeralVolumeSource
- is embedded will be the owner of the PVC, i.e. the PVC
- will be deleted together with the pod. The name of the
- PVC will be `-` where `` is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too long). \n
- An existing PVC with that name that is not owned by the
- pod will *not* be used for the pod to avoid using an unrelated
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
volume by mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created PVC
- is meant to be used by the pod, the PVC has to updated
- with an owner reference to the pod once the pod exists.
- Normally this should not be necessary, but it may be useful
- when manually reconstructing a broken cluster. \n This
- field is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required, must
- not be nil."
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations that
- will be copied into the PVC when creating it. No other
- fields are allowed and will be rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into the PVC
- that gets created from this template. The same fields
- as in a PersistentVolumeClaim are also valid here.
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired access
- modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used to specify
- either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
- * An existing PVC (PersistentVolumeClaim) If the
- provisioner or an external controller can support
- the specified data source, it will create a new
- volume based on the contents of the specified
- data source. When the AnyVolumeDataSource feature
- gate is enabled, dataSource contents will be copied
- to dataSourceRef, and dataSourceRef contents will
- be copied to dataSource when dataSourceRef.namespace
- is not specified. If the namespace is specified,
- then dataSourceRef will not be copied to dataSource.'
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -2788,45 +2842,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the object
- from which to populate the volume with data, if
- a non-empty volume is desired. This may be any
- object from a non-empty API group (non core object)
- or a PersistentVolumeClaim object. When this field
- is specified, volume binding will only succeed
- if the type of the specified object matches some
- installed volume populator or dynamic provisioner.
- This field will replace the functionality of the
- dataSource field and as such if both fields are
- non-empty, they must have the same value. For
- backwards compatibility, when namespace isn''t
- specified in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the same value
- automatically if one of them is empty and the
- other is non-empty. When namespace is specified
- in dataSourceRef, dataSource isn''t set to the
- same value and must be empty. There are three
- important differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific types
- of objects, dataSourceRef allows any non-core
- object, as well as PersistentVolumeClaim objects.
- * While dataSource ignores disallowed values (dropping
- them), dataSourceRef preserves all values, and
- generates an error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using the
- namespace field of dataSourceRef requires the
- CrossNamespaceVolumeDataSource feature gate to
- be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -2837,53 +2882,23 @@ spec:
referenced
type: string
namespace:
- description: Namespace is the namespace of resource
- being referenced Note that when a namespace
- is specified, a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent namespace
- to allow that namespace's owner to accept
- the reference. See the ReferenceGrant documentation
- for details. (Alpha) This field requires the
- CrossNamespaceVolumeDataSource feature gate
- to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum resources
- the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to specify
- resource requirements that are lower than previous
- value but must still be higher than capacity recorded
- in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references one
- entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -2891,8 +2906,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -2901,12 +2917,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -2918,28 +2933,24 @@ spec:
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.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -2952,24 +2963,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name of the
- StorageClass required by the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type of volume
- is required by the claim. Value of Filesystem
- is implied when not included in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -2986,19 +3010,20 @@ spec:
pod.
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. TODO: how do we prevent errors in the
- filesystem from compromising the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target worldwide
@@ -3007,26 +3032,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide identifiers
- (wwids) Either wwids or combination of targetWWNs and
- lun must be set, but not both simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume resource
- that is provisioned/attached using an exec based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to use for
this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -3035,20 +3061,23 @@ spec:
command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -3061,9 +3090,9 @@ spec:
service being running
properties:
datasetName:
- description: datasetName is Name of the dataset stored as
- metadata -> name on the dataset for Flocker should be
- considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset. This
@@ -3071,52 +3100,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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.
+ 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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -3129,51 +3161,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use host directory
- mounts and who can/can not mount host directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults to "" More
- info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support iSCSI
@@ -3184,56 +3226,59 @@ spec:
Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name that uses
- an iSCSI transport. Defaults to 'default' (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI target
and initiator authentication
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -3241,43 +3286,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting in
- VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -3287,10 +3340,10 @@ spec:
persistent disk attached and mounted on kubelets host machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon Controller
@@ -3304,14 +3357,15 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx volume
@@ -3324,14 +3378,13 @@ spec:
configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -3340,22 +3393,113 @@ spec:
description: Projection that may be projected along with
other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the configMap
data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3364,25 +3508,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3390,10 +3530,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -3432,17 +3572,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -3454,10 +3590,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -3490,17 +3625,14 @@ spec:
to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3509,25 +3641,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3535,10 +3663,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether the
@@ -3551,29 +3679,26 @@ spec:
the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative to the
- mount point of the file to project the token
- into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -3586,28 +3711,30 @@ spec:
that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default is no
- group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte volume
- to be mounted with read-only permissions. Defaults to
- false.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults to serivceaccount
- user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references an already
@@ -3618,54 +3745,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More info:
- https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -3676,9 +3817,11 @@ spec:
attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the ScaleIO
@@ -3689,17 +3832,20 @@ spec:
Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -3708,8 +3854,8 @@ spec:
with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage for
- a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -3721,9 +3867,9 @@ spec:
configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume already
- created in the ScaleIO system that is associated with
- this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -3731,31 +3877,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should populate
- this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -3763,22 +3908,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3790,8 +3934,9 @@ spec:
its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -3799,40 +3944,42 @@ spec:
and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use for obtaining
- the StorageOS API credentials. If not specified, default
- values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name of the
- StorageOS volume. Volume names are only unique within
- a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -3840,10 +3987,10 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy Based
@@ -3879,9 +4026,10 @@ spec:
labels:
additionalProperties:
type: string
- description: 'Labels will be added on JindoFS Master or Worker
- pods. DEPRECATED: This is a deprecated field. Please use PodMetadata
- instead. Note: this field is set to be exclusive with PodMetadata.Labels'
+ description: |-
+ Labels will be added on JindoFS Master or Worker pods.
+ DEPRECATED: This is a deprecated field. Please use PodMetadata instead.
+ Note: this field is set to be exclusive with PodMetadata.Labels
type: object
nodeSelector:
additionalProperties:
@@ -3915,32 +4063,39 @@ spec:
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Jindo component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Jindo component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -3956,8 +4111,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -3966,50 +4122,49 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
tolerations:
description: If specified, the pod's tolerations.
items:
- description: The pod this Toleration is attached to tolerates
- any taint that matches the triple using
- the matching operator .
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
properties:
effect:
- description: Effect indicates the taint effect to match.
- Empty means match all taint effects. When specified, allowed
- values are NoSchedule, PreferNoSchedule and NoExecute.
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
type: string
key:
- description: Key is the taint key that the toleration applies
- to. Empty means match all taint keys. If the key is empty,
- operator must be Exists; this combination means to match
- all values and all keys.
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
type: string
operator:
- description: Operator represents a key's relationship to
- the value. Valid operators are Exists and Equal. Defaults
- to Equal. Exists is equivalent to wildcard for value,
- so that a pod can tolerate all taints of a particular
- category.
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
type: string
tolerationSeconds:
- description: TolerationSeconds represents the period of
- time the toleration (which must be of effect NoExecute,
- otherwise this field is ignored) tolerates the taint.
- By default, it is not set, which means tolerate the taint
- forever (do not evict). Zero and negative values will
- be treated as 0 (evict immediately) by the system.
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
format: int64
type: integer
value:
- description: Value is the taint value the toleration matches
- to. If the operator is Exists, the value should be empty,
- otherwise just a regular string.
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
type: string
type: object
type: array
@@ -4021,33 +4176,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -4071,21 +4229,20 @@ spec:
affinity including node selector
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -4095,28 +4252,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4129,28 +4284,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4172,47 +4325,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4225,28 +4377,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4303,55 +4453,58 @@ spec:
type: object
type: array
currentFuseNumberScheduled:
- description: The total number of nodes that can be running the runtime
- Fuse pod (including nodes correctly running the runtime Fuse pod).
+ description: |-
+ The total number of nodes that can be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
currentMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
currentWorkerNumberScheduled:
- description: The total number of nodes that can be running the runtime
- worker pod (including nodes correctly running the runtime worker
- pod).
+ description: |-
+ The total number of nodes that can be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
desiredFuseNumberScheduled:
- description: The total number of nodes that should be running the
- runtime Fuse pod (including nodes correctly running the runtime
- Fuse pod).
+ description: |-
+ The total number of nodes that should be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
desiredMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
desiredWorkerNumberScheduled:
- description: The total number of nodes that should be running the
- runtime worker pod (including nodes correctly running the runtime
- worker pod).
+ description: |-
+ The total number of nodes that should be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
fuseNumberAvailable:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
+ description: |-
+ The number of nodes that should be running the
+ runtime Fuse pod and have one or more of the runtime Fuse pod running and
available (ready for at least spec.minReadySeconds)
format: int32
type: integer
fuseNumberReady:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
- ready.
+ description: |-
+ The number of nodes that should be running the runtime Fuse pod and have one
+ or more of the runtime Fuse pod running and ready.
format: int32
type: integer
fuseNumberUnavailable:
- description: The number of nodes that should be running the runtime
- fuse pod and have none of the runtime fuse pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime fuse pod and have none of the runtime fuse pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
@@ -4362,9 +4515,9 @@ spec:
description: Reason for the condition's last transition.
type: string
masterNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have zero or more of the runtime master pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have zero
+ or more of the runtime master pod running and ready.
format: int32
type: integer
masterPhase:
@@ -4374,16 +4527,18 @@ spec:
description: Reason for Master's condition transition
type: string
mountTime:
- description: MountTime represents time last mount happened if Mounttime
- is earlier than master starting time, remount will be required
+ description: |-
+ MountTime represents time last mount happened
+ if Mounttime is earlier than master starting time, remount will be required
format: date-time
type: string
mounts:
description: MountPoints represents the mount points specified in
the bounded dataset
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -4423,10 +4578,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -4452,20 +4608,22 @@ spec:
description: config map used to set configurations
type: string
workerNumberAvailable:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and available (ready for at least spec.minReadySeconds)
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have one or more of the runtime worker pod running and
+ available (ready for at least spec.minReadySeconds)
format: int32
type: integer
workerNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have one
+ or more of the runtime worker pod running and ready.
format: int32
type: integer
workerNumberUnavailable:
- description: The number of nodes that should be running the runtime
- worker pod and have none of the runtime worker pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have none of the runtime worker pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
diff --git a/charts/fluid/fluid/crds/data.fluid.io_juicefsruntimes.yaml b/charts/fluid/fluid/crds/data.fluid.io_juicefsruntimes.yaml
index 3f5a5d5a1f9..88c1d001914 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_juicefsruntimes.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_juicefsruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: juicefsruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -50,14 +50,19 @@ spec:
description: JuiceFSRuntime is the Schema for the juicefsruntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -69,25 +74,22 @@ spec:
properties:
gracePeriodSeconds:
default: 60
- description: Optional duration in seconds the cache needs to clean
- gracefully. May be decreased in delete runtime request. Value
- must be non-negative integer. The value zero indicates clean
- immediately via the timeout command (no opportunity to shut
- down). If this value is nil, the default grace period will be
- used instead. The grace period is the duration in seconds after
- the processes running in the pod are sent a termination signal
- and the time when the processes are forcibly halted with timeout
- command. Set this value longer than the expected cleanup time
- for your process.
+ description: |-
+ Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request.
+ Value must be non-negative integer. The value zero indicates clean immediately via the timeout
+ command (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with timeout command.
+ Set this value longer than the expected cleanup time for your process.
format: int32
type: integer
maxRetryAttempts:
default: 3
- description: Optional max retry Attempts when cleanCache function
- returns an error after execution, runtime attempts to run it
- three more times by default. With Maximum Retry Attempts, you
- can customize the maximum number of retries. This gives you
- the option to continue processing retries.
+ description: |-
+ Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts
+ to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number
+ of retries. This gives you the option to continue processing retries.
format: int32
type: integer
type: object
@@ -97,18 +99,20 @@ spec:
type: string
type: array
disablePrometheus:
- description: Disable monitoring for JuiceFS Runtime Prometheus is
- enabled by default
+ description: |-
+ Disable monitoring for JuiceFS Runtime
+ Prometheus is enabled by default
type: boolean
fuse:
description: Desired state for JuiceFS Fuse
properties:
cleanPolicy:
- description: 'CleanPolicy decides when to clean Juicefs Fuse pods.
+ description: |-
+ CleanPolicy decides when to clean Juicefs Fuse pods.
Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once th fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnDemand'
+ OnDemand cleans fuse pod once th fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnDemand
type: string
env:
description: Environment variables that will be used by JuiceFS
@@ -122,15 +126,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -143,9 +148,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -156,11 +162,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -175,10 +179,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -208,9 +211,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -245,9 +249,9 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
options:
additionalProperties:
@@ -273,19 +277,24 @@ spec:
description: Resources that will be requested by JuiceFS Fuse.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -301,8 +310,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -311,10 +321,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -325,33 +336,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -381,25 +395,31 @@ spec:
2.3.0-SNAPSHOT)
type: string
resources:
- description: Resources that will be requested by initialize the
- users for runtime.
Resources are not allowed for ephemeral
- containers. Ephemeral containers use spare resources already
- allocated to the pod.
+ description: |-
+ Resources that will be requested by initialize the users for runtime.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -415,8 +435,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -425,10 +446,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -450,15 +472,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -471,9 +494,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -484,11 +508,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -503,10 +525,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -536,9 +557,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -592,7 +614,8 @@ spec:
container.
properties:
containerPort:
- description: Number of port to expose on the pod's IP address.
+ description: |-
+ Number of port to expose on the pod's IP address.
This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
@@ -600,21 +623,23 @@ spec:
description: What host IP to bind the external port to.
type: string
hostPort:
- description: Number of port to expose on the host. If specified,
- this must be a valid port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort. Most containers
- do not need this.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an IANA_SVC_NAME
- and unique within the pod. Each named port in a pod must
- have a unique name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP, TCP, or SCTP.
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
Defaults to "TCP".
type: string
required:
@@ -622,9 +647,10 @@ spec:
type: object
type: array
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
@@ -632,19 +658,24 @@ spec:
description: Resources that will be requested by the JuiceFS component.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -660,8 +691,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -670,10 +702,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -684,33 +717,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -751,15 +787,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -772,9 +809,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -785,11 +823,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -804,10 +840,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -837,9 +872,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -893,7 +929,8 @@ spec:
container.
properties:
containerPort:
- description: Number of port to expose on the pod's IP address.
+ description: |-
+ Number of port to expose on the pod's IP address.
This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
@@ -901,21 +938,23 @@ spec:
description: What host IP to bind the external port to.
type: string
hostPort:
- description: Number of port to expose on the host. If specified,
- this must be a valid port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort. Most containers
- do not need this.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an IANA_SVC_NAME
- and unique within the pod. Each named port in a pod must
- have a unique name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP, TCP, or SCTP.
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
Defaults to "TCP".
type: string
required:
@@ -923,9 +962,10 @@ spec:
type: object
type: array
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
@@ -933,19 +973,24 @@ spec:
description: Resources that will be requested by the JuiceFS component.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -961,8 +1006,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -971,10 +1017,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -985,33 +1032,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -1067,9 +1117,9 @@ spec:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -1086,71 +1136,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -1172,10 +1218,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -1185,9 +1231,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -1198,9 +1244,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -1218,8 +1264,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -1229,67 +1276,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -1299,30 +1351,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -1331,25 +1378,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1357,9 +1400,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -1373,45 +1417,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -1421,17 +1463,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -1461,16 +1501,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1481,10 +1518,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -1512,121 +1548,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1642,50 +1682,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1696,58 +1722,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1755,9 +1746,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1766,13 +1757,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1784,10 +1773,9 @@ spec:
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.
+ 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
@@ -1795,20 +1783,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1820,27 +1804,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1857,21 +1851,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -1880,28 +1873,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1910,23 +1902,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1939,9 +1931,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -1949,57 +1941,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -2012,54 +2002,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -2070,62 +2067,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -2133,39 +2127,45 @@ spec:
- targetPortal
type: object
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -2176,10 +2176,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -2193,15 +2193,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -2215,16 +2215,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -2233,24 +2230,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -2259,29 +2346,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2289,10 +2368,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -2333,20 +2412,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -2359,12 +2431,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -2398,19 +2467,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -2419,29 +2483,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2449,10 +2505,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -2465,32 +2521,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -2503,29 +2553,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -2536,60 +2587,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -2600,10 +2659,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -2614,21 +2674,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2637,8 +2696,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -2650,9 +2709,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -2660,34 +2719,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -2696,25 +2751,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2726,8 +2777,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2735,44 +2787,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2780,10 +2830,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -2804,9 +2854,9 @@ spec:
type: object
volumeType:
default: hostPath
- description: 'VolumeType is the volume type of the tier.
- Should be one of the three types: `hostPath`, `emptyDir`
- and `volumeTemplate`. If not set, defaults to hostPath.'
+ description: |-
+ VolumeType is the volume type of the tier. Should be one of the three types: `hostPath`, `emptyDir` and `volumeTemplate`.
+ If not set, defaults to hostPath.
enum:
- hostPath
- emptyDir
@@ -2824,34 +2874,36 @@ spec:
be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the readOnly
- setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent disk
- resource in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -2873,10 +2925,10 @@ spec:
storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -2885,8 +2937,9 @@ spec:
disk (only in managed availability set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -2897,8 +2950,9 @@ spec:
on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that contains
@@ -2916,8 +2970,9 @@ spec:
shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is a collection
- of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -2926,61 +2981,72 @@ spec:
rather than the full Ceph tree, default is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile is the
- path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is reference
- to the authentication secret for User, default is empty.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados user name,
- default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached and
- mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount. Must
- be a filesystem type supported by the host operating system.
- Examples: "ext4", "xfs", "ntfs". Implicitly inferred to
- be "ext4" if unspecified. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a secret
- object containing parameters used to connect to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume in cinder.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -2990,27 +3056,25 @@ spec:
this volume
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.'
+ 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.
format: int32
type: integer
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -3018,22 +3082,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3041,8 +3104,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap or its
@@ -3056,41 +3121,43 @@ spec:
feature).
properties:
driver:
- description: driver is the name of the CSI driver that handles
- this volume. Consult with your admin for the correct name
- as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs", "ntfs".
- If not provided, the empty value is passed to the associated
- CSI driver which will determine the default filesystem
- to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference to the
- secret object containing sensitive information to pass
- to the CSI driver to complete the CSI NodePublishVolume
- and NodeUnpublishVolume calls. This field is optional,
- and may be empty if no secret is required. If the secret
- object contains more than one secret, all secret references
- are passed.
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific properties
- that are passed to the CSI driver. Consult your driver's
- documentation for supported values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -3100,16 +3167,15 @@ spec:
that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created files
- by default. Must be a Optional: mode bits used to set
- permissions on created files by default. Must be an octal
- value between 0000 and 0777 or a decimal value between
- 0 and 511. YAML accepts both octal and decimal values,
- JSON requires decimal values for mode bits. Defaults to
- 0644. Directories within the path are not affected by
- this setting. This might be in conflict with other options
- that affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -3136,15 +3202,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -3155,10 +3219,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -3185,106 +3248,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory that
- shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage medium
- should back this directory. The default is "" which means
- to use the node''s default medium. Must be an empty string
- (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local storage
- required for this EmptyDir volume. The size limit is also
- applicable for memory medium. The maximum usage on memory
- medium EmptyDir would be the minimum value between the
- SizeLimit specified here and the sum of memory limits
- of all containers in a pod. The default is nil which means
- that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is handled
- by a cluster storage driver. The volume's lifecycle is tied
- to the pod that defines it - it will be created before the
- pod starts, and deleted when the pod is removed. \n Use this
- if: a) the volume is only needed while the pod runs, b) features
- of normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified through
- a storage class, and d) the storage driver supports dynamic
- volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource
- for more information on the connection between this volume
- type and PersistentVolumeClaim). \n Use PersistentVolumeClaim
- or one of the vendor-specific APIs for volumes that persist
- for longer than the lifecycle of an individual pod. \n Use
- CSI for light-weight local ephemeral volumes if the CSI driver
- is meant to be used that way - see the documentation of the
- driver for more information. \n A pod can use both types of
- ephemeral volumes and persistent volumes at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone PVC to
- provision the volume. The pod in which this EphemeralVolumeSource
- is embedded will be the owner of the PVC, i.e. the PVC
- will be deleted together with the pod. The name of the
- PVC will be `-` where `` is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too long). \n
- An existing PVC with that name that is not owned by the
- pod will *not* be used for the pod to avoid using an unrelated
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
volume by mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created PVC
- is meant to be used by the pod, the PVC has to updated
- with an owner reference to the pod once the pod exists.
- Normally this should not be necessary, but it may be useful
- when manually reconstructing a broken cluster. \n This
- field is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required, must
- not be nil."
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations that
- will be copied into the PVC when creating it. No other
- fields are allowed and will be rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into the PVC
- that gets created from this template. The same fields
- as in a PersistentVolumeClaim are also valid here.
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired access
- modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used to specify
- either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
- * An existing PVC (PersistentVolumeClaim) If the
- provisioner or an external controller can support
- the specified data source, it will create a new
- volume based on the contents of the specified
- data source. When the AnyVolumeDataSource feature
- gate is enabled, dataSource contents will be copied
- to dataSourceRef, and dataSourceRef contents will
- be copied to dataSource when dataSourceRef.namespace
- is not specified. If the namespace is specified,
- then dataSourceRef will not be copied to dataSource.'
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -3300,45 +3382,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the object
- from which to populate the volume with data, if
- a non-empty volume is desired. This may be any
- object from a non-empty API group (non core object)
- or a PersistentVolumeClaim object. When this field
- is specified, volume binding will only succeed
- if the type of the specified object matches some
- installed volume populator or dynamic provisioner.
- This field will replace the functionality of the
- dataSource field and as such if both fields are
- non-empty, they must have the same value. For
- backwards compatibility, when namespace isn''t
- specified in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the same value
- automatically if one of them is empty and the
- other is non-empty. When namespace is specified
- in dataSourceRef, dataSource isn''t set to the
- same value and must be empty. There are three
- important differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific types
- of objects, dataSourceRef allows any non-core
- object, as well as PersistentVolumeClaim objects.
- * While dataSource ignores disallowed values (dropping
- them), dataSourceRef preserves all values, and
- generates an error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using the
- namespace field of dataSourceRef requires the
- CrossNamespaceVolumeDataSource feature gate to
- be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -3349,53 +3422,23 @@ spec:
referenced
type: string
namespace:
- description: Namespace is the namespace of resource
- being referenced Note that when a namespace
- is specified, a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent namespace
- to allow that namespace's owner to accept
- the reference. See the ReferenceGrant documentation
- for details. (Alpha) This field requires the
- CrossNamespaceVolumeDataSource feature gate
- to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum resources
- the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to specify
- resource requirements that are lower than previous
- value but must still be higher than capacity recorded
- in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references one
- entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -3403,8 +3446,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -3413,12 +3457,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -3430,28 +3473,24 @@ spec:
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.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -3464,24 +3503,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name of the
- StorageClass required by the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type of volume
- is required by the claim. Value of Filesystem
- is implied when not included in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -3498,19 +3550,20 @@ spec:
pod.
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. TODO: how do we prevent errors in the
- filesystem from compromising the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target worldwide
@@ -3519,26 +3572,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide identifiers
- (wwids) Either wwids or combination of targetWWNs and
- lun must be set, but not both simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume resource
- that is provisioned/attached using an exec based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to use for
this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -3547,20 +3601,23 @@ spec:
command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -3573,9 +3630,9 @@ spec:
service being running
properties:
datasetName:
- description: datasetName is Name of the dataset stored as
- metadata -> name on the dataset for Flocker should be
- considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset. This
@@ -3583,52 +3640,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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.
+ 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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -3641,51 +3701,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use host directory
- mounts and who can/can not mount host directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults to "" More
- info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support iSCSI
@@ -3696,56 +3766,59 @@ spec:
Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name that uses
- an iSCSI transport. Defaults to 'default' (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI target
and initiator authentication
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -3753,43 +3826,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting in
- VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -3799,10 +3880,10 @@ spec:
persistent disk attached and mounted on kubelets host machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon Controller
@@ -3816,14 +3897,15 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx volume
@@ -3836,14 +3918,13 @@ spec:
configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -3852,22 +3933,113 @@ spec:
description: Projection that may be projected along with
other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the configMap
data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3876,25 +4048,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3902,10 +4070,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -3944,17 +4112,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -3966,10 +4130,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -4002,17 +4165,14 @@ spec:
to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -4021,25 +4181,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -4047,10 +4203,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether the
@@ -4063,29 +4219,26 @@ spec:
the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative to the
- mount point of the file to project the token
- into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -4098,28 +4251,30 @@ spec:
that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default is no
- group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte volume
- to be mounted with read-only permissions. Defaults to
- false.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults to serivceaccount
- user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references an already
@@ -4130,54 +4285,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More info:
- https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -4188,9 +4357,11 @@ spec:
attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the ScaleIO
@@ -4201,17 +4372,20 @@ spec:
Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -4220,8 +4394,8 @@ spec:
with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage for
- a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -4233,9 +4407,9 @@ spec:
configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume already
- created in the ScaleIO system that is associated with
- this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -4243,31 +4417,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should populate
- this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -4275,22 +4448,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -4302,8 +4474,9 @@ spec:
its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -4311,40 +4484,42 @@ spec:
and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use for obtaining
- the StorageOS API credentials. If not specified, default
- values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name of the
- StorageOS volume. Volume names are only unique within
- a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -4352,10 +4527,10 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy Based
@@ -4394,15 +4569,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -4415,9 +4591,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -4428,11 +4605,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -4447,10 +4622,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -4480,9 +4654,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -4536,7 +4711,8 @@ spec:
container.
properties:
containerPort:
- description: Number of port to expose on the pod's IP address.
+ description: |-
+ Number of port to expose on the pod's IP address.
This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
@@ -4544,21 +4720,23 @@ spec:
description: What host IP to bind the external port to.
type: string
hostPort:
- description: Number of port to expose on the host. If specified,
- this must be a valid port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort. Most containers
- do not need this.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an IANA_SVC_NAME
- and unique within the pod. Each named port in a pod must
- have a unique name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP, TCP, or SCTP.
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
Defaults to "TCP".
type: string
required:
@@ -4566,9 +4744,10 @@ spec:
type: object
type: array
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
@@ -4576,19 +4755,24 @@ spec:
description: Resources that will be requested by the JuiceFS component.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -4604,8 +4788,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -4614,10 +4799,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -4628,33 +4814,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -4678,21 +4867,20 @@ spec:
affinity including node selector
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -4702,28 +4890,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4736,28 +4922,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4779,47 +4963,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4832,28 +5015,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4910,55 +5091,58 @@ spec:
type: object
type: array
currentFuseNumberScheduled:
- description: The total number of nodes that can be running the runtime
- Fuse pod (including nodes correctly running the runtime Fuse pod).
+ description: |-
+ The total number of nodes that can be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
currentMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
currentWorkerNumberScheduled:
- description: The total number of nodes that can be running the runtime
- worker pod (including nodes correctly running the runtime worker
- pod).
+ description: |-
+ The total number of nodes that can be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
desiredFuseNumberScheduled:
- description: The total number of nodes that should be running the
- runtime Fuse pod (including nodes correctly running the runtime
- Fuse pod).
+ description: |-
+ The total number of nodes that should be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
desiredMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
desiredWorkerNumberScheduled:
- description: The total number of nodes that should be running the
- runtime worker pod (including nodes correctly running the runtime
- worker pod).
+ description: |-
+ The total number of nodes that should be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
fuseNumberAvailable:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
+ description: |-
+ The number of nodes that should be running the
+ runtime Fuse pod and have one or more of the runtime Fuse pod running and
available (ready for at least spec.minReadySeconds)
format: int32
type: integer
fuseNumberReady:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
- ready.
+ description: |-
+ The number of nodes that should be running the runtime Fuse pod and have one
+ or more of the runtime Fuse pod running and ready.
format: int32
type: integer
fuseNumberUnavailable:
- description: The number of nodes that should be running the runtime
- fuse pod and have none of the runtime fuse pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime fuse pod and have none of the runtime fuse pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
@@ -4969,9 +5153,9 @@ spec:
description: Reason for the condition's last transition.
type: string
masterNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have zero or more of the runtime master pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have zero
+ or more of the runtime master pod running and ready.
format: int32
type: integer
masterPhase:
@@ -4981,16 +5165,18 @@ spec:
description: Reason for Master's condition transition
type: string
mountTime:
- description: MountTime represents time last mount happened if Mounttime
- is earlier than master starting time, remount will be required
+ description: |-
+ MountTime represents time last mount happened
+ if Mounttime is earlier than master starting time, remount will be required
format: date-time
type: string
mounts:
description: MountPoints represents the mount points specified in
the bounded dataset
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -5030,10 +5216,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -5059,20 +5246,22 @@ spec:
description: config map used to set configurations
type: string
workerNumberAvailable:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and available (ready for at least spec.minReadySeconds)
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have one or more of the runtime worker pod running and
+ available (ready for at least spec.minReadySeconds)
format: int32
type: integer
workerNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have one
+ or more of the runtime worker pod running and ready.
format: int32
type: integer
workerNumberUnavailable:
- description: The number of nodes that should be running the runtime
- worker pod and have none of the runtime worker pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have none of the runtime worker pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
diff --git a/charts/fluid/fluid/crds/data.fluid.io_thinruntimeprofiles.yaml b/charts/fluid/fluid/crds/data.fluid.io_thinruntimeprofiles.yaml
index debd3fcb6c6..23f7a5d8a10 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_thinruntimeprofiles.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_thinruntimeprofiles.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: thinruntimeprofiles.data.fluid.io
spec:
group: data.fluid.io
@@ -21,14 +21,19 @@ spec:
API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -47,11 +52,12 @@ spec:
type: string
type: array
cleanPolicy:
- description: 'CleanPolicy decides when to clean thinRuntime Fuse
- pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once the fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnDemand'
+ description: |-
+ CleanPolicy decides when to clean thinRuntime Fuse pods.
+ Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
+ OnDemand cleans fuse pod once the fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnDemand
type: string
command:
description: Command that will be passed to thinRuntime Fuse
@@ -70,15 +76,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -91,9 +98,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -104,11 +112,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -123,10 +129,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -156,9 +161,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -190,28 +196,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -219,10 +221,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -231,9 +235,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -243,9 +247,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -262,32 +266,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -302,34 +309,33 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
@@ -343,16 +349,16 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
options:
additionalProperties:
type: string
- description: Options configurable options of FUSE client, performance
- parameters usually. will be merged with Dataset.spec.mounts.options
- into fuse pod.
+ description: |-
+ Options configurable options of FUSE client, performance parameters usually.
+ will be merged with Dataset.spec.mounts.options into fuse pod.
type: object
ports:
description: Ports used thinRuntime
@@ -361,7 +367,8 @@ spec:
container.
properties:
containerPort:
- description: Number of port to expose on the pod's IP address.
+ description: |-
+ Number of port to expose on the pod's IP address.
This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
@@ -369,21 +376,23 @@ spec:
description: What host IP to bind the external port to.
type: string
hostPort:
- description: Number of port to expose on the host. If specified,
- this must be a valid port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort. Most containers
- do not need this.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an IANA_SVC_NAME
- and unique within the pod. Each named port in a pod must
- have a unique name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP, TCP, or SCTP.
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
Defaults to "TCP".
type: string
required:
@@ -397,28 +406,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -426,10 +431,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -438,9 +445,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -450,9 +457,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -469,32 +476,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -509,34 +519,33 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
@@ -544,19 +553,24 @@ spec:
description: Resources that will be requested by thinRuntime Fuse.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -572,8 +586,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -582,10 +597,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -596,33 +612,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -648,34 +667,36 @@ spec:
be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the readOnly
- setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent disk
- resource in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -697,10 +718,10 @@ spec:
storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -709,8 +730,9 @@ spec:
disk (only in managed availability set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -721,8 +743,9 @@ spec:
on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that contains
@@ -740,8 +763,9 @@ spec:
shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is a collection
- of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -750,61 +774,72 @@ spec:
rather than the full Ceph tree, default is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile is the
- path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is reference
- to the authentication secret for User, default is empty.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados user name,
- default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached and
- mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount. Must
- be a filesystem type supported by the host operating system.
- Examples: "ext4", "xfs", "ntfs". Implicitly inferred to
- be "ext4" if unspecified. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a secret
- object containing parameters used to connect to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume in cinder.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -814,27 +849,25 @@ spec:
this volume
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.'
+ 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.
format: int32
type: integer
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -842,22 +875,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -865,8 +897,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap or its
@@ -880,41 +914,43 @@ spec:
feature).
properties:
driver:
- description: driver is the name of the CSI driver that handles
- this volume. Consult with your admin for the correct name
- as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs", "ntfs".
- If not provided, the empty value is passed to the associated
- CSI driver which will determine the default filesystem
- to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference to the
- secret object containing sensitive information to pass
- to the CSI driver to complete the CSI NodePublishVolume
- and NodeUnpublishVolume calls. This field is optional,
- and may be empty if no secret is required. If the secret
- object contains more than one secret, all secret references
- are passed.
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific properties
- that are passed to the CSI driver. Consult your driver's
- documentation for supported values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -924,16 +960,15 @@ spec:
that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created files
- by default. Must be a Optional: mode bits used to set
- permissions on created files by default. Must be an octal
- value between 0000 and 0777 or a decimal value between
- 0 and 511. YAML accepts both octal and decimal values,
- JSON requires decimal values for mode bits. Defaults to
- 0644. Directories within the path are not affected by
- this setting. This might be in conflict with other options
- that affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -960,15 +995,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -979,10 +1012,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -1009,106 +1041,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory that
- shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage medium
- should back this directory. The default is "" which means
- to use the node''s default medium. Must be an empty string
- (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local storage
- required for this EmptyDir volume. The size limit is also
- applicable for memory medium. The maximum usage on memory
- medium EmptyDir would be the minimum value between the
- SizeLimit specified here and the sum of memory limits
- of all containers in a pod. The default is nil which means
- that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is handled
- by a cluster storage driver. The volume's lifecycle is tied
- to the pod that defines it - it will be created before the
- pod starts, and deleted when the pod is removed. \n Use this
- if: a) the volume is only needed while the pod runs, b) features
- of normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified through
- a storage class, and d) the storage driver supports dynamic
- volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource
- for more information on the connection between this volume
- type and PersistentVolumeClaim). \n Use PersistentVolumeClaim
- or one of the vendor-specific APIs for volumes that persist
- for longer than the lifecycle of an individual pod. \n Use
- CSI for light-weight local ephemeral volumes if the CSI driver
- is meant to be used that way - see the documentation of the
- driver for more information. \n A pod can use both types of
- ephemeral volumes and persistent volumes at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone PVC to
- provision the volume. The pod in which this EphemeralVolumeSource
- is embedded will be the owner of the PVC, i.e. the PVC
- will be deleted together with the pod. The name of the
- PVC will be `-` where `` is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too long). \n
- An existing PVC with that name that is not owned by the
- pod will *not* be used for the pod to avoid using an unrelated
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
volume by mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created PVC
- is meant to be used by the pod, the PVC has to updated
- with an owner reference to the pod once the pod exists.
- Normally this should not be necessary, but it may be useful
- when manually reconstructing a broken cluster. \n This
- field is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required, must
- not be nil."
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations that
- will be copied into the PVC when creating it. No other
- fields are allowed and will be rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into the PVC
- that gets created from this template. The same fields
- as in a PersistentVolumeClaim are also valid here.
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired access
- modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used to specify
- either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
- * An existing PVC (PersistentVolumeClaim) If the
- provisioner or an external controller can support
- the specified data source, it will create a new
- volume based on the contents of the specified
- data source. When the AnyVolumeDataSource feature
- gate is enabled, dataSource contents will be copied
- to dataSourceRef, and dataSourceRef contents will
- be copied to dataSource when dataSourceRef.namespace
- is not specified. If the namespace is specified,
- then dataSourceRef will not be copied to dataSource.'
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -1124,45 +1175,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the object
- from which to populate the volume with data, if
- a non-empty volume is desired. This may be any
- object from a non-empty API group (non core object)
- or a PersistentVolumeClaim object. When this field
- is specified, volume binding will only succeed
- if the type of the specified object matches some
- installed volume populator or dynamic provisioner.
- This field will replace the functionality of the
- dataSource field and as such if both fields are
- non-empty, they must have the same value. For
- backwards compatibility, when namespace isn''t
- specified in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the same value
- automatically if one of them is empty and the
- other is non-empty. When namespace is specified
- in dataSourceRef, dataSource isn''t set to the
- same value and must be empty. There are three
- important differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific types
- of objects, dataSourceRef allows any non-core
- object, as well as PersistentVolumeClaim objects.
- * While dataSource ignores disallowed values (dropping
- them), dataSourceRef preserves all values, and
- generates an error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using the
- namespace field of dataSourceRef requires the
- CrossNamespaceVolumeDataSource feature gate to
- be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -1173,53 +1215,23 @@ spec:
referenced
type: string
namespace:
- description: Namespace is the namespace of resource
- being referenced Note that when a namespace
- is specified, a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent namespace
- to allow that namespace's owner to accept
- the reference. See the ReferenceGrant documentation
- for details. (Alpha) This field requires the
- CrossNamespaceVolumeDataSource feature gate
- to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum resources
- the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to specify
- resource requirements that are lower than previous
- value but must still be higher than capacity recorded
- in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references one
- entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1227,8 +1239,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1237,12 +1250,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1254,28 +1266,24 @@ spec:
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.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -1288,24 +1296,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name of the
- StorageClass required by the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type of volume
- is required by the claim. Value of Filesystem
- is implied when not included in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1322,19 +1343,20 @@ spec:
pod.
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. TODO: how do we prevent errors in the
- filesystem from compromising the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target worldwide
@@ -1343,26 +1365,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide identifiers
- (wwids) Either wwids or combination of targetWWNs and
- lun must be set, but not both simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume resource
- that is provisioned/attached using an exec based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to use for
this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1371,20 +1394,23 @@ spec:
command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1397,9 +1423,9 @@ spec:
service being running
properties:
datasetName:
- description: datasetName is Name of the dataset stored as
- metadata -> name on the dataset for Flocker should be
- considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset. This
@@ -1407,52 +1433,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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.
+ 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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -1465,51 +1494,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use host directory
- mounts and who can/can not mount host directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults to "" More
- info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support iSCSI
@@ -1520,56 +1559,59 @@ spec:
Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name that uses
- an iSCSI transport. Defaults to 'default' (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI target
and initiator authentication
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -1577,43 +1619,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting in
- VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -1623,10 +1673,10 @@ spec:
persistent disk attached and mounted on kubelets host machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon Controller
@@ -1640,14 +1690,15 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx volume
@@ -1660,14 +1711,13 @@ spec:
configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -1676,22 +1726,113 @@ spec:
description: Projection that may be projected along with
other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the configMap
data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -1700,25 +1841,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1726,10 +1863,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -1768,17 +1905,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1790,10 +1923,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -1826,17 +1958,14 @@ spec:
to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -1845,25 +1974,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1871,10 +1996,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether the
@@ -1887,29 +2012,26 @@ spec:
the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative to the
- mount point of the file to project the token
- into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -1922,28 +2044,30 @@ spec:
that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default is no
- group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte volume
- to be mounted with read-only permissions. Defaults to
- false.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults to serivceaccount
- user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references an already
@@ -1954,54 +2078,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More info:
- https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -2012,9 +2150,11 @@ spec:
attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the ScaleIO
@@ -2025,17 +2165,20 @@ spec:
Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2044,8 +2187,8 @@ spec:
with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage for
- a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -2057,9 +2200,9 @@ spec:
configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume already
- created in the ScaleIO system that is associated with
- this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -2067,31 +2210,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should populate
- this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -2099,22 +2241,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2126,8 +2267,9 @@ spec:
its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2135,40 +2277,42 @@ spec:
and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use for obtaining
- the StorageOS API credentials. If not specified, default
- values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name of the
- StorageOS volume. Volume names are only unique within
- a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2176,10 +2320,10 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy Based
@@ -2218,15 +2362,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -2239,9 +2384,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -2252,11 +2398,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -2271,10 +2415,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -2304,9 +2447,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -2338,28 +2482,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -2367,10 +2507,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -2379,9 +2521,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -2391,9 +2533,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -2410,32 +2552,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -2450,34 +2595,33 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
@@ -2500,7 +2644,8 @@ spec:
container.
properties:
containerPort:
- description: Number of port to expose on the pod's IP address.
+ description: |-
+ Number of port to expose on the pod's IP address.
This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
@@ -2508,21 +2653,23 @@ spec:
description: What host IP to bind the external port to.
type: string
hostPort:
- description: Number of port to expose on the host. If specified,
- this must be a valid port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort. Most containers
- do not need this.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an IANA_SVC_NAME
- and unique within the pod. Each named port in a pod must
- have a unique name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP, TCP, or SCTP.
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
Defaults to "TCP".
type: string
required:
@@ -2536,28 +2683,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -2565,10 +2708,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -2577,9 +2722,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -2589,9 +2734,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -2608,32 +2753,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -2648,41 +2796,41 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
@@ -2690,19 +2838,24 @@ spec:
description: Resources that will be requested by thinRuntime component.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -2718,8 +2871,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -2728,10 +2882,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -2742,33 +2897,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
diff --git a/charts/fluid/fluid/crds/data.fluid.io_thinruntimes.yaml b/charts/fluid/fluid/crds/data.fluid.io_thinruntimes.yaml
index 834f375d8d3..dbb02b53e53 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_thinruntimes.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_thinruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: thinruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -20,14 +20,19 @@ spec:
description: ThinRuntime is the Schema for the thinruntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -35,8 +40,9 @@ spec:
description: ThinRuntimeSpec defines the desired state of ThinRuntime
properties:
disablePrometheus:
- description: Disable monitoring for Runtime Prometheus is enabled
- by default
+ description: |-
+ Disable monitoring for Runtime
+ Prometheus is enabled by default
type: boolean
fuse:
description: The component spec of thinRuntime
@@ -47,11 +53,12 @@ spec:
type: string
type: array
cleanPolicy:
- description: 'CleanPolicy decides when to clean thinRuntime Fuse
- pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once the fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnDemand'
+ description: |-
+ CleanPolicy decides when to clean thinRuntime Fuse pods.
+ Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
+ OnDemand cleans fuse pod once the fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnDemand
type: string
command:
description: Command that will be passed to thinRuntime Fuse
@@ -70,15 +77,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -91,9 +99,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -104,11 +113,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -123,10 +130,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -156,9 +162,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -190,28 +197,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -219,10 +222,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -231,9 +236,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -243,9 +248,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -262,32 +267,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -302,34 +310,33 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
@@ -343,16 +350,16 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
options:
additionalProperties:
type: string
- description: Options configurable options of FUSE client, performance
- parameters usually. will be merged with Dataset.spec.mounts.options
- into fuse pod.
+ description: |-
+ Options configurable options of FUSE client, performance parameters usually.
+ will be merged with Dataset.spec.mounts.options into fuse pod.
type: object
ports:
description: Ports used thinRuntime
@@ -361,7 +368,8 @@ spec:
container.
properties:
containerPort:
- description: Number of port to expose on the pod's IP address.
+ description: |-
+ Number of port to expose on the pod's IP address.
This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
@@ -369,21 +377,23 @@ spec:
description: What host IP to bind the external port to.
type: string
hostPort:
- description: Number of port to expose on the host. If specified,
- this must be a valid port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort. Most containers
- do not need this.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an IANA_SVC_NAME
- and unique within the pod. Each named port in a pod must
- have a unique name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP, TCP, or SCTP.
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
Defaults to "TCP".
type: string
required:
@@ -397,28 +407,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -426,10 +432,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -438,9 +446,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -450,9 +458,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -469,32 +477,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -509,34 +520,33 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
@@ -544,19 +554,24 @@ spec:
description: Resources that will be requested by thinRuntime Fuse.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -572,8 +587,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -582,10 +598,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -596,33 +613,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -640,25 +660,22 @@ spec:
properties:
gracePeriodSeconds:
default: 60
- description: Optional duration in seconds the cache needs
- to clean gracefully. May be decreased in delete runtime
- request. Value must be non-negative integer. The value zero
- indicates clean immediately via the timeout command (no
- opportunity to shut down). If this value is nil, the default
- grace period will be used instead. The grace period is the
- duration in seconds after the processes running in the pod
- are sent a termination signal and the time when the processes
- are forcibly halted with timeout command. Set this value
- longer than the expected cleanup time for your process.
+ description: |-
+ Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request.
+ Value must be non-negative integer. The value zero indicates clean immediately via the timeout
+ command (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with timeout command.
+ Set this value longer than the expected cleanup time for your process.
format: int32
type: integer
maxRetryAttempts:
default: 3
- description: Optional max retry Attempts when cleanCache function
- returns an error after execution, runtime attempts to run
- it three more times by default. With Maximum Retry Attempts,
- you can customize the maximum number of retries. This gives
- you the option to continue processing retries.
+ description: |-
+ Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts
+ to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number
+ of retries. This gives you the option to continue processing retries.
format: int32
type: integer
type: object
@@ -710,9 +727,9 @@ spec:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -729,71 +746,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -815,10 +828,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -828,9 +841,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -841,9 +854,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -861,8 +874,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -872,67 +886,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -942,30 +961,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -974,25 +988,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1000,9 +1010,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -1016,45 +1027,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -1064,17 +1073,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -1104,16 +1111,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1124,10 +1128,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -1155,121 +1158,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1285,50 +1292,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1339,58 +1332,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1398,9 +1356,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1409,13 +1367,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1427,10 +1383,9 @@ spec:
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.
+ 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
@@ -1438,20 +1393,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1463,27 +1414,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1500,21 +1461,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -1523,28 +1483,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1553,23 +1512,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1582,9 +1541,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -1592,57 +1551,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -1655,54 +1612,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -1713,62 +1677,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -1776,39 +1737,45 @@ spec:
- targetPortal
type: object
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -1819,10 +1786,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -1836,15 +1803,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -1858,16 +1825,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -1876,24 +1840,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1902,29 +1956,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1932,10 +1978,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -1976,20 +2022,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -2002,12 +2041,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -2041,19 +2077,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -2062,29 +2093,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2092,10 +2115,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -2108,32 +2131,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -2146,29 +2163,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -2179,60 +2197,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -2243,10 +2269,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -2257,21 +2284,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2280,8 +2306,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -2293,9 +2319,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -2303,34 +2329,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -2339,25 +2361,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2369,8 +2387,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2378,44 +2397,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2423,10 +2440,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -2447,9 +2464,9 @@ spec:
type: object
volumeType:
default: hostPath
- description: 'VolumeType is the volume type of the tier.
- Should be one of the three types: `hostPath`, `emptyDir`
- and `volumeTemplate`. If not set, defaults to hostPath.'
+ description: |-
+ VolumeType is the volume type of the tier. Should be one of the three types: `hostPath`, `emptyDir` and `volumeTemplate`.
+ If not set, defaults to hostPath.
enum:
- hostPath
- emptyDir
@@ -2467,34 +2484,36 @@ spec:
be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the readOnly
- setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent disk
- resource in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -2516,10 +2535,10 @@ spec:
storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -2528,8 +2547,9 @@ spec:
disk (only in managed availability set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -2540,8 +2560,9 @@ spec:
on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that contains
@@ -2559,8 +2580,9 @@ spec:
shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is a collection
- of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -2569,61 +2591,72 @@ spec:
rather than the full Ceph tree, default is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile is the
- path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is reference
- to the authentication secret for User, default is empty.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados user name,
- default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached and
- mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount. Must
- be a filesystem type supported by the host operating system.
- Examples: "ext4", "xfs", "ntfs". Implicitly inferred to
- be "ext4" if unspecified. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a secret
- object containing parameters used to connect to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume in cinder.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -2633,27 +2666,25 @@ spec:
this volume
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.'
+ 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.
format: int32
type: integer
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -2661,22 +2692,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2684,8 +2714,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap or its
@@ -2699,41 +2731,43 @@ spec:
feature).
properties:
driver:
- description: driver is the name of the CSI driver that handles
- this volume. Consult with your admin for the correct name
- as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs", "ntfs".
- If not provided, the empty value is passed to the associated
- CSI driver which will determine the default filesystem
- to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference to the
- secret object containing sensitive information to pass
- to the CSI driver to complete the CSI NodePublishVolume
- and NodeUnpublishVolume calls. This field is optional,
- and may be empty if no secret is required. If the secret
- object contains more than one secret, all secret references
- are passed.
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific properties
- that are passed to the CSI driver. Consult your driver's
- documentation for supported values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -2743,16 +2777,15 @@ spec:
that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created files
- by default. Must be a Optional: mode bits used to set
- permissions on created files by default. Must be an octal
- value between 0000 and 0777 or a decimal value between
- 0 and 511. YAML accepts both octal and decimal values,
- JSON requires decimal values for mode bits. Defaults to
- 0644. Directories within the path are not affected by
- this setting. This might be in conflict with other options
- that affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -2779,15 +2812,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -2798,10 +2829,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -2828,106 +2858,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory that
- shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage medium
- should back this directory. The default is "" which means
- to use the node''s default medium. Must be an empty string
- (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local storage
- required for this EmptyDir volume. The size limit is also
- applicable for memory medium. The maximum usage on memory
- medium EmptyDir would be the minimum value between the
- SizeLimit specified here and the sum of memory limits
- of all containers in a pod. The default is nil which means
- that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is handled
- by a cluster storage driver. The volume's lifecycle is tied
- to the pod that defines it - it will be created before the
- pod starts, and deleted when the pod is removed. \n Use this
- if: a) the volume is only needed while the pod runs, b) features
- of normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified through
- a storage class, and d) the storage driver supports dynamic
- volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource
- for more information on the connection between this volume
- type and PersistentVolumeClaim). \n Use PersistentVolumeClaim
- or one of the vendor-specific APIs for volumes that persist
- for longer than the lifecycle of an individual pod. \n Use
- CSI for light-weight local ephemeral volumes if the CSI driver
- is meant to be used that way - see the documentation of the
- driver for more information. \n A pod can use both types of
- ephemeral volumes and persistent volumes at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone PVC to
- provision the volume. The pod in which this EphemeralVolumeSource
- is embedded will be the owner of the PVC, i.e. the PVC
- will be deleted together with the pod. The name of the
- PVC will be `-` where `` is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too long). \n
- An existing PVC with that name that is not owned by the
- pod will *not* be used for the pod to avoid using an unrelated
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
volume by mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created PVC
- is meant to be used by the pod, the PVC has to updated
- with an owner reference to the pod once the pod exists.
- Normally this should not be necessary, but it may be useful
- when manually reconstructing a broken cluster. \n This
- field is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required, must
- not be nil."
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations that
- will be copied into the PVC when creating it. No other
- fields are allowed and will be rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into the PVC
- that gets created from this template. The same fields
- as in a PersistentVolumeClaim are also valid here.
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired access
- modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used to specify
- either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
- * An existing PVC (PersistentVolumeClaim) If the
- provisioner or an external controller can support
- the specified data source, it will create a new
- volume based on the contents of the specified
- data source. When the AnyVolumeDataSource feature
- gate is enabled, dataSource contents will be copied
- to dataSourceRef, and dataSourceRef contents will
- be copied to dataSource when dataSourceRef.namespace
- is not specified. If the namespace is specified,
- then dataSourceRef will not be copied to dataSource.'
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -2943,45 +2992,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the object
- from which to populate the volume with data, if
- a non-empty volume is desired. This may be any
- object from a non-empty API group (non core object)
- or a PersistentVolumeClaim object. When this field
- is specified, volume binding will only succeed
- if the type of the specified object matches some
- installed volume populator or dynamic provisioner.
- This field will replace the functionality of the
- dataSource field and as such if both fields are
- non-empty, they must have the same value. For
- backwards compatibility, when namespace isn''t
- specified in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the same value
- automatically if one of them is empty and the
- other is non-empty. When namespace is specified
- in dataSourceRef, dataSource isn''t set to the
- same value and must be empty. There are three
- important differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific types
- of objects, dataSourceRef allows any non-core
- object, as well as PersistentVolumeClaim objects.
- * While dataSource ignores disallowed values (dropping
- them), dataSourceRef preserves all values, and
- generates an error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using the
- namespace field of dataSourceRef requires the
- CrossNamespaceVolumeDataSource feature gate to
- be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -2992,53 +3032,23 @@ spec:
referenced
type: string
namespace:
- description: Namespace is the namespace of resource
- being referenced Note that when a namespace
- is specified, a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent namespace
- to allow that namespace's owner to accept
- the reference. See the ReferenceGrant documentation
- for details. (Alpha) This field requires the
- CrossNamespaceVolumeDataSource feature gate
- to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum resources
- the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to specify
- resource requirements that are lower than previous
- value but must still be higher than capacity recorded
- in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references one
- entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -3046,8 +3056,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -3056,12 +3067,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -3073,28 +3083,24 @@ spec:
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.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -3107,24 +3113,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name of the
- StorageClass required by the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type of volume
- is required by the claim. Value of Filesystem
- is implied when not included in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -3141,19 +3160,20 @@ spec:
pod.
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. TODO: how do we prevent errors in the
- filesystem from compromising the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target worldwide
@@ -3162,26 +3182,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide identifiers
- (wwids) Either wwids or combination of targetWWNs and
- lun must be set, but not both simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume resource
- that is provisioned/attached using an exec based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to use for
this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -3190,20 +3211,23 @@ spec:
command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -3216,9 +3240,9 @@ spec:
service being running
properties:
datasetName:
- description: datasetName is Name of the dataset stored as
- metadata -> name on the dataset for Flocker should be
- considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset. This
@@ -3226,52 +3250,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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.
+ 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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -3284,51 +3311,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use host directory
- mounts and who can/can not mount host directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults to "" More
- info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support iSCSI
@@ -3339,56 +3376,59 @@ spec:
Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name that uses
- an iSCSI transport. Defaults to 'default' (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI target
and initiator authentication
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -3396,43 +3436,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting in
- VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -3442,10 +3490,10 @@ spec:
persistent disk attached and mounted on kubelets host machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon Controller
@@ -3459,14 +3507,15 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx volume
@@ -3479,14 +3528,13 @@ spec:
configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -3495,22 +3543,113 @@ spec:
description: Projection that may be projected along with
other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the configMap
data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3519,25 +3658,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3545,10 +3680,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -3587,17 +3722,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -3609,10 +3740,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -3645,17 +3775,14 @@ spec:
to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3664,25 +3791,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3690,10 +3813,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether the
@@ -3706,29 +3829,26 @@ spec:
the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative to the
- mount point of the file to project the token
- into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -3741,28 +3861,30 @@ spec:
that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default is no
- group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte volume
- to be mounted with read-only permissions. Defaults to
- false.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults to serivceaccount
- user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references an already
@@ -3773,54 +3895,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More info:
- https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -3831,9 +3967,11 @@ spec:
attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the ScaleIO
@@ -3844,17 +3982,20 @@ spec:
Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -3863,8 +4004,8 @@ spec:
with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage for
- a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -3876,9 +4017,9 @@ spec:
configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume already
- created in the ScaleIO system that is associated with
- this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -3886,31 +4027,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should populate
- this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -3918,22 +4058,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3945,8 +4084,9 @@ spec:
its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -3954,40 +4094,42 @@ spec:
and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use for obtaining
- the StorageOS API credentials. If not specified, default
- values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name of the
- StorageOS volume. Volume names are only unique within
- a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -3995,10 +4137,10 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy Based
@@ -4037,15 +4179,16 @@ spec:
C_IDENTIFIER.
type: string
value:
- description: 'Variable references $(VAR_NAME) are expanded
- using the previously defined environment variables in
- the container and any service environment variables. If
- a variable cannot be resolved, the reference in the input
- string will be unchanged. Double $$ are reduced to a single
- $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
- Escaped references will never be expanded, regardless
- of whether the variable exists or not. Defaults to "".'
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
type: string
valueFrom:
description: Source for the environment variable's value.
@@ -4058,9 +4201,10 @@ spec:
description: The key to select.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap or its
@@ -4071,11 +4215,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
fieldRef:
- description: 'Selects a field of the pod: supports metadata.name,
- metadata.namespace, `metadata.labels['''']`,
- `metadata.annotations['''']`, spec.nodeName,
- spec.serviceAccountName, status.hostIP, status.podIP,
- status.podIPs.'
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
properties:
apiVersion:
description: Version of the schema the FieldPath
@@ -4090,10 +4232,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
resourceFieldRef:
- description: 'Selects a resource of the container: only
- resources limits and requests (limits.cpu, limits.memory,
- limits.ephemeral-storage, requests.cpu, requests.memory
- and requests.ephemeral-storage) are currently supported.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -4123,9 +4264,10 @@ spec:
be a valid secret key.
type: string
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret or its key
@@ -4157,28 +4299,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -4186,10 +4324,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -4198,9 +4338,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -4210,9 +4350,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -4229,32 +4369,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -4269,34 +4412,33 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
@@ -4319,7 +4461,8 @@ spec:
container.
properties:
containerPort:
- description: Number of port to expose on the pod's IP address.
+ description: |-
+ Number of port to expose on the pod's IP address.
This must be a valid port number, 0 < x < 65536.
format: int32
type: integer
@@ -4327,21 +4470,23 @@ spec:
description: What host IP to bind the external port to.
type: string
hostPort:
- description: Number of port to expose on the host. If specified,
- this must be a valid port number, 0 < x < 65536. If HostNetwork
- is specified, this must match ContainerPort. Most containers
- do not need this.
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
format: int32
type: integer
name:
- description: If specified, this must be an IANA_SVC_NAME
- and unique within the pod. Each named port in a pod must
- have a unique name. Name for the port that can be referred
- to by services.
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
type: string
protocol:
default: TCP
- description: Protocol for port. Must be UDP, TCP, or SCTP.
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
Defaults to "TCP".
type: string
required:
@@ -4355,28 +4500,24 @@ spec:
description: Exec specifies the action to take.
properties:
command:
- description: Command is the command line to execute inside
- the container, the working directory for the command is
- root ('/') in the container's filesystem. The command
- is simply exec'd, it is not run inside a shell, so traditional
- shell instructions ('|', etc) won't work. To use a shell,
- you need to explicitly call out to that shell. Exit
- status of 0 is treated as live/healthy and non-zero
- is unhealthy.
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
items:
type: string
type: array
type: object
failureThreshold:
- description: Minimum consecutive failures for the probe to
- be considered failed after having succeeded. Defaults to
- 3. Minimum value is 1.
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
format: int32
type: integer
grpc:
description: GRPC specifies an action involving a GRPC port.
- This is a beta field and requires enabling GRPCContainerProbe
- feature gate.
properties:
port:
description: Port number of the gRPC service. Number must
@@ -4384,10 +4525,12 @@ spec:
format: int32
type: integer
service:
- description: "Service is the name of the service to place
- in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
- \n If this is not specified, the default behavior is
- defined by gRPC."
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+
+ If this is not specified, the default behavior is defined by gRPC.
type: string
required:
- port
@@ -4396,9 +4539,9 @@ spec:
description: HTTPGet specifies the http request to perform.
properties:
host:
- description: Host name to connect to, defaults to the
- pod IP. You probably want to set "Host" in httpHeaders
- instead.
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
type: string
httpHeaders:
description: Custom headers to set in the request. HTTP
@@ -4408,9 +4551,9 @@ spec:
be used in HTTP probes
properties:
name:
- description: The header field name. This will be
- canonicalized upon output, so case-variant names
- will be understood as the same header.
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string
value:
description: The header field value
@@ -4427,32 +4570,35 @@ spec:
anyOf:
- type: integer
- type: string
- description: Name or number of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
scheme:
- description: Scheme to use for connecting to the host.
+ description: |-
+ Scheme to use for connecting to the host.
Defaults to HTTP.
type: string
required:
- port
type: object
initialDelaySeconds:
- description: 'Number of seconds after the container has started
- before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
periodSeconds:
- description: How often (in seconds) to perform the probe.
+ description: |-
+ How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
- description: Minimum consecutive successes for the probe to
- be considered successful after having failed. Defaults to
- 1. Must be 1 for liveness and startup. Minimum value is
- 1.
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
format: int32
type: integer
tcpSocket:
@@ -4467,41 +4613,41 @@ spec:
anyOf:
- type: integer
- type: string
- description: Number or name of the port to access on the
- container. Number must be in the range 1 to 65535. Name
- must be an IANA_SVC_NAME.
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
x-kubernetes-int-or-string: true
required:
- port
type: object
terminationGracePeriodSeconds:
- description: Optional duration in seconds the pod needs to
- terminate gracefully upon probe failure. The grace period
- is the duration in seconds after the processes running in
- the pod are sent a termination signal and the time when
- the processes are forcibly halted with a kill signal. Set
- this value longer than the expected cleanup time for your
- process. If this value is nil, the pod's terminationGracePeriodSeconds
- will be used. Otherwise, this value overrides the value
- provided by the pod spec. Value must be non-negative integer.
- The value zero indicates stop immediately via the kill signal
- (no opportunity to shut down). This is a beta field and
- requires enabling ProbeTerminationGracePeriod feature gate.
- Minimum value is 1. spec.terminationGracePeriodSeconds is
- used if unset.
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
format: int64
type: integer
timeoutSeconds:
- description: 'Number of seconds after which the probe times
- out. Defaults to 1 second. Minimum value is 1. More info:
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
@@ -4509,19 +4655,24 @@ spec:
description: Resources that will be requested by thinRuntime component.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -4537,8 +4688,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -4547,10 +4699,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -4561,33 +4714,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -4611,21 +4767,20 @@ spec:
affinity including node selector
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -4635,28 +4790,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4669,28 +4822,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4712,47 +4863,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4765,28 +4915,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4843,55 +4991,58 @@ spec:
type: object
type: array
currentFuseNumberScheduled:
- description: The total number of nodes that can be running the runtime
- Fuse pod (including nodes correctly running the runtime Fuse pod).
+ description: |-
+ The total number of nodes that can be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
currentMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
currentWorkerNumberScheduled:
- description: The total number of nodes that can be running the runtime
- worker pod (including nodes correctly running the runtime worker
- pod).
+ description: |-
+ The total number of nodes that can be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
desiredFuseNumberScheduled:
- description: The total number of nodes that should be running the
- runtime Fuse pod (including nodes correctly running the runtime
- Fuse pod).
+ description: |-
+ The total number of nodes that should be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
desiredMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
desiredWorkerNumberScheduled:
- description: The total number of nodes that should be running the
- runtime worker pod (including nodes correctly running the runtime
- worker pod).
+ description: |-
+ The total number of nodes that should be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
fuseNumberAvailable:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
+ description: |-
+ The number of nodes that should be running the
+ runtime Fuse pod and have one or more of the runtime Fuse pod running and
available (ready for at least spec.minReadySeconds)
format: int32
type: integer
fuseNumberReady:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
- ready.
+ description: |-
+ The number of nodes that should be running the runtime Fuse pod and have one
+ or more of the runtime Fuse pod running and ready.
format: int32
type: integer
fuseNumberUnavailable:
- description: The number of nodes that should be running the runtime
- fuse pod and have none of the runtime fuse pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime fuse pod and have none of the runtime fuse pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
@@ -4902,9 +5053,9 @@ spec:
description: Reason for the condition's last transition.
type: string
masterNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have zero or more of the runtime master pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have zero
+ or more of the runtime master pod running and ready.
format: int32
type: integer
masterPhase:
@@ -4914,16 +5065,18 @@ spec:
description: Reason for Master's condition transition
type: string
mountTime:
- description: MountTime represents time last mount happened if Mounttime
- is earlier than master starting time, remount will be required
+ description: |-
+ MountTime represents time last mount happened
+ if Mounttime is earlier than master starting time, remount will be required
format: date-time
type: string
mounts:
description: MountPoints represents the mount points specified in
the bounded dataset
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -4963,10 +5116,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -4992,20 +5146,22 @@ spec:
description: config map used to set configurations
type: string
workerNumberAvailable:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and available (ready for at least spec.minReadySeconds)
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have one or more of the runtime worker pod running and
+ available (ready for at least spec.minReadySeconds)
format: int32
type: integer
workerNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have one
+ or more of the runtime worker pod running and ready.
format: int32
type: integer
workerNumberUnavailable:
- description: The number of nodes that should be running the runtime
- worker pod and have none of the runtime worker pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have none of the runtime worker pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
diff --git a/charts/fluid/fluid/crds/data.fluid.io_vineyardruntimes.yaml b/charts/fluid/fluid/crds/data.fluid.io_vineyardruntimes.yaml
index a20dd064cf6..4cc9bcf62a6 100644
--- a/charts/fluid/fluid/crds/data.fluid.io_vineyardruntimes.yaml
+++ b/charts/fluid/fluid/crds/data.fluid.io_vineyardruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: vineyardruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -65,14 +65,19 @@ spec:
description: VineyardRuntime is the Schema for the VineyardRuntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -80,43 +85,53 @@ spec:
description: VineyardRuntimeSpec defines the desired state of VineyardRuntime
properties:
disablePrometheus:
- description: Disable monitoring metrics for Vineyard Runtime Default
- is false
+ description: |-
+ Disable monitoring metrics for Vineyard Runtime
+ Default is false
type: boolean
fuse:
- description: Fuse holds the configurations for Vineyard client socket.
- Note that the "Fuse" here is kept just for API consistency, VineyardRuntime
- mount a socket file instead of a FUSE filesystem to make data cache
- available. Applications can connect to the vineyard runtime components
- through IPC or RPC. IPC is the default way to connect to vineyard
- runtime components, which is more efficient than RPC. If the socket
- file is not mounted, the connection will fall back to RPC.
+ description: |-
+ Fuse holds the configurations for Vineyard client socket.
+ Note that the "Fuse" here is kept just for API consistency, VineyardRuntime mount a socket file instead of a FUSE filesystem to make data cache available.
+ Applications can connect to the vineyard runtime components through IPC or RPC.
+ IPC is the default way to connect to vineyard runtime components, which is more efficient than RPC.
+ If the socket file is not mounted, the connection will fall back to RPC.
properties:
cleanPolicy:
- description: 'CleanPolicy decides when to clean Vineyard Fuse
- pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once th fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnRuntimeDeleted'
+ description: |-
+ CleanPolicy decides when to clean Vineyard Fuse pods.
+ Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
+ OnDemand cleans fuse pod once th fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnRuntimeDeleted
type: string
env:
additionalProperties:
type: string
- description: Environment variables that will be used by Vineyard
- Fuse. Default is not set.
+ description: |-
+ Environment variables that will be used by Vineyard Fuse.
+ Default is not set.
type: object
image:
- description: Image for Vineyard Fuse Default is `registry.aliyuncs.com/vineyard/vineyard-fluid-fuse`
+ description: |-
+ Image for Vineyard Fuse
+ Default is `registry.aliyuncs.com/vineyard/vineyard-fluid-fuse`
type: string
imagePullPolicy:
- description: Image pull policy for Vineyard Fuse Default is `IfNotPresent`
+ description: |-
+ Image pull policy for Vineyard Fuse
+ Default is `IfNotPresent`
Available values are `Always`, `IfNotPresent`, `Never`
type: string
imageTag:
- description: Image Tag for Vineyard Fuse Default is `v0.22.2`
+ description: |-
+ Image Tag for Vineyard Fuse
+ Default is `v0.22.2`
type: string
networkMode:
- description: Whether to use hostnetwork or not Default is HostNetwork
+ description: |-
+ Whether to use hostnetwork or not
+ Default is HostNetwork
enum:
- HostNetwork
- ""
@@ -125,28 +140,31 @@ spec:
options:
additionalProperties:
type: string
- description: 'Options for configuring vineyardd parameters. Supported
- options are as follows. reserve_memory: (Bool) Whether to reserving
- enough physical memory pages for vineyardd. Default is true.
- allocator: (String) The allocator used by vineyardd, could be
- "dlmalloc" or "mimalloc". Default is "dlmalloc". compression:
- (Bool) Compress before migration or spilling. Default is true.
- coredump: (Bool) Enable coredump core dump when been aborted.
- Default is false. meta_timeout: (Int) Timeout period before
- waiting the metadata service to be ready, in seconds Default
- is 60. etcd_endpoint: (String) The endpoint of etcd. Default
- is same as the etcd endpoint of vineyard worker. etcd_prefix:
- (String) Metadata path prefix in etcd. Default is "/vineyard".
- size: (String) shared memory size for vineyardd. 1024M, 1024000,
- 1G, or 1Gi. Default is "0", which means no cache. When the size
- is not set to "0", it should be greater than the 2048 bytes(2K).
- spill_path: (String) Path to spill temporary files, if not set,
- spilling will be disabled. Default is "". spill_lower_rate:
- (Double) The lower rate of memory usage to trigger spilling.
- Default is 0.3. spill_upper_rate: (Double) The upper rate of
- memory usage to stop spilling. Default is 0.8. Default is as
- follows. fuse: options: size: "0" etcd_endpoint: "http://{{Name}}-master-0.{{Name}}-master.{{Namespace}}:{{EtcdClientPort}}"
- etcd_prefix: "/vineyard"'
+ description: "Options for configuring vineyardd parameters.\nSupported
+ options are as follows.\n reserve_memory: (Bool) Whether to
+ reserving enough physical memory pages for vineyardd.\n Default
+ is true.\n allocator: (String) The allocator used by vineyardd,
+ could be \"dlmalloc\" or \"mimalloc\".\n Default
+ is \"dlmalloc\".\n compression: (Bool) Compress before migration
+ or spilling.\n Default is true.\n coredump: (Bool)
+ Enable coredump core dump when been aborted.\n Default
+ is false.\n meta_timeout: (Int) Timeout period before waiting
+ the metadata service to be ready, in seconds\n\t\t\t\t Default
+ is 60.\n etcd_endpoint: (String) The endpoint of etcd.\n Default
+ is same as the etcd endpoint of vineyard worker.\n etcd_prefix:
+ (String) Metadata path prefix in etcd.\n Default
+ is \"/vineyard\".\n size: (String) shared memory size for vineyardd.\n
+ \ 1024M, 1024000, 1G, or 1Gi.\n Default
+ is \"0\", which means no cache.\n When the size
+ is not set to \"0\", it should be greater than the 2048 bytes(2K).\n
+ \ spill_path: (String) Path to spill temporary files, if not
+ set, spilling will be disabled.\n Default is \"\".\n
+ \ spill_lower_rate: (Double) The lower rate of memory usage
+ to trigger spilling.\n\t\t\t\t\t Default is 0.3.\n spill_upper_rate:
+ (Double) The upper rate of memory usage to stop spilling.\n\t\t\t\t\t
+ \ Default is 0.8.\nDefault is as follows.\nfuse:\n options:\n
+ \ size: \"0\"\n etcd_endpoint: \"http://{{Name}}-master-0.{{Name}}-master.{{Namespace}}:{{EtcdClientPort}}\"\n\t
+ \ etcd_prefix: \"/vineyard\""
type: object
podMetadata:
description: PodMetadata defines labels and annotations that will
@@ -164,23 +182,29 @@ spec:
type: object
type: object
resources:
- description: Resources contains the resource requirements and
- limits for the Vineyard Fuse. Default is not set.
+ description: |-
+ Resources contains the resource requirements and limits for the Vineyard Fuse.
+ Default is not set.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -196,8 +220,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -206,25 +231,28 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
master:
- description: Master holds the configurations for Vineyard Master component
+ description: |-
+ Master holds the configurations for Vineyard Master component
Represents the Etcd component in Vineyard
properties:
endpoint:
- description: 'ExternalEndpoint defines the configurations for
- external etcd cluster Default is not set If set, the Vineyard
- Master component will not be deployed, which means the Vineyard
- Worker component will use an external Etcd cluster. E,g. endpoint:
- uri: "etcd-svc.etcd-namespace.svc.cluster.local:2379" encryptOptions:
- - name: access-key valueFrom: secretKeyRef: name: etcd-secret
- key: accesskey'
+ description: "ExternalEndpoint defines the configurations for
+ external etcd cluster\nDefault is not set\nIf set, the Vineyard
+ Master component will not be deployed,\nwhich means the Vineyard
+ Worker component will use an external Etcd cluster.\nE,g.\n
+ \ endpoint:\n uri: \"etcd-svc.etcd-namespace.svc.cluster.local:2379\"\n
+ \ encryptOptions:\n - name: access-key\n\t\t valueFrom:\n
+ \ secretKeyRef:\n name: etcd-secret\n\t\t\t
+ \ key: accesskey"
properties:
encryptOptions:
description: encrypt info for accessing the external etcd
@@ -260,37 +288,42 @@ spec:
description: Configurable options for External Etcd cluster.
type: object
uri:
- description: URI specifies the endpoint of external Etcd cluster
- E,g. "etcd-svc.etcd-namespace.svc.cluster.local:2379" Default
- is not set and use http protocol to connect to external
- etcd cluster
+ description: |-
+ URI specifies the endpoint of external Etcd cluster
+ E,g. "etcd-svc.etcd-namespace.svc.cluster.local:2379"
+ Default is not set and use http protocol to connect to external etcd cluster
type: string
type: object
env:
additionalProperties:
type: string
- description: Environment variables that will be used by Vineyard
- component. For Master, refer to Etcd
- Configuration for more info Default is not set.
+ description: |-
+ Environment variables that will be used by Vineyard component.
+ For Master, refer to Etcd Configuration for more info
+ Default is not set.
type: object
image:
- description: The image of Vineyard component. For Master, the
- default image is `registry.aliyuncs.com/vineyard/vineyardd`
+ description: |-
+ The image of Vineyard component.
+ For Master, the default image is `registry.aliyuncs.com/vineyard/vineyardd`
For Worker, the default image is `registry.aliyuncs.com/vineyard/vineyardd`
- The default container registry is `docker.io`, you can change
- it by setting the image field
+ The default container registry is `docker.io`, you can change it by setting the image field
type: string
imagePullPolicy:
- description: The image pull policy of Vineyard component. Default
- is `IfNotPresent`.
+ description: |-
+ The image pull policy of Vineyard component.
+ Default is `IfNotPresent`.
type: string
imageTag:
- description: The image tag of Vineyard component. For Master,
- the default image tag is `v0.22.2`. For Worker, the default
- image tag is `v0.22.2`.
+ description: |-
+ The image tag of Vineyard component.
+ For Master, the default image tag is `v0.22.2`.
+ For Worker, the default image tag is `v0.22.2`.
type: string
networkMode:
- description: Whether to use hostnetwork or not Default is HostNetwork
+ description: |-
+ Whether to use hostnetwork or not
+ Default is HostNetwork
enum:
- HostNetwork
- ""
@@ -299,26 +332,35 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: 'NodeSelector is a selector to choose which nodes
- to launch the Vineyard component. E,g. {"disktype": "ssd"}'
+ description: |-
+ NodeSelector is a selector to choose which nodes to launch the Vineyard component.
+ E,g. {"disktype": "ssd"}
type: object
options:
additionalProperties:
type: string
- description: "Configurable options for Vineyard component. For
- Master, there is no configurable options. For Worker, support
- the following options. \n vineyardd.reserve.memory: (Bool) where
- to reserve memory for vineyardd If set to true, the memory quota
- will be counted to the vineyardd rather than the application.
- etcd.prefix: (String) the prefix of etcd key for vineyard objects
- wait.etcd.timeout: (String) the timeout period before waiting
- the etcd to be ready, in seconds \n Default value is as follows.
- \n vineyardd.reserve.memory: \"true\" etcd.prefix: \"/vineyard\"
- wait.etcd.timeout: \"120\""
+ description: |-
+ Configurable options for Vineyard component.
+ For Master, there is no configurable options.
+ For Worker, support the following options.
+
+
+ vineyardd.reserve.memory: (Bool) where to reserve memory for vineyardd
+ If set to true, the memory quota will be counted to the vineyardd rather than the application.
+ etcd.prefix: (String) the prefix of etcd key for vineyard objects
+ wait.etcd.timeout: (String) the timeout period before waiting the etcd to be ready, in seconds
+
+
+ Default value is as follows.
+
+
+ vineyardd.reserve.memory: "true"
+ etcd.prefix: "/vineyard"
+ wait.etcd.timeout: "120"
type: object
podMetadata:
- description: PodMetadata defines labels and annotations that will
- be propagated to Vineyard's pods including Master and Worker.
+ description: |-
+ PodMetadata defines labels and annotations that will be propagated to Vineyard's pods including Master and Worker.
Default is not set.
properties:
annotations:
@@ -335,39 +377,45 @@ spec:
ports:
additionalProperties:
type: integer
- description: Ports used by Vineyard component. For Master, the
- default client port is 2379 and peer port is 2380. For Worker,
- the default rpc port is 9600 and the default exporter port is
- 9144.
+ description: |-
+ Ports used by Vineyard component.
+ For Master, the default client port is 2379 and peer port is 2380.
+ For Worker, the default rpc port is 9600 and the default exporter port is 9144.
type: object
replicas:
- description: The replicas of Vineyard component. If not specified,
- defaults to 1. For worker, the replicas should not be greater
- than the number of nodes in the cluster
+ description: |-
+ The replicas of Vineyard component.
+ If not specified, defaults to 1.
+ For worker, the replicas should not be greater than the number of nodes in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources contains the resource requirements and
- limits for the Vineyard component. Default is not set. For Worker,
- when the options contains vineyardd.reserve.memory=true, the
- resources.request.memory for worker should be greater than tieredstore.levels[0].quota(aka
- vineyardd shared memory)
+ description: |-
+ Resources contains the resource requirements and limits for the Vineyard component.
+ Default is not set.
+ For Worker, when the options contains vineyardd.reserve.memory=true,
+ the resources.request.memory for worker should be greater than tieredstore.levels[0].quota(aka vineyardd shared memory)
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -383,8 +431,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -393,49 +442,53 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
- description: VolumeMounts specifies the volumes listed in ".spec.volumes"
- to mount into the vineyard runtime component's filesystem. It
- is useful for specifying a persistent storage. Default is not
- set.
+ description: |-
+ VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the vineyard runtime component's filesystem.
+ It is useful for specifying a persistent storage.
+ Default is not set.
items:
description: VolumeMount describes a mounting of a Volume within
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -459,26 +512,28 @@ spec:
type: object
type: object
replicas:
- description: The replicas of the worker, need to be specified If worker.replicas
- and the field are both specified, the field will be respected
+ description: |-
+ The replicas of the worker, need to be specified
+ If worker.replicas and the field are both specified, the field will be respected
format: int32
type: integer
tieredstore:
- description: "Tiered storage used by vineyardd The MediumType can
- only be `MEM` and `SSD` `MEM` actually represents the shared memory
- of vineyardd. `SSD` represents the external storage of vineyardd.
- Default is as follows. tieredstore: levels: - level: 0 mediumtype:
- MEM quota: 4Gi \n Choose hostpath as the external storage of vineyardd.
- tieredstore: levels: - level: 0 mediumtype: MEM quota: 4Gi high:
- \"0.8\" low: \"0.3\" - level: 1 mediumtype: SSD quota: 10Gi volumeType:
- Hostpath path: /var/spill-path"
+ description: "Tiered storage used by vineyardd\nThe MediumType can
+ only be `MEM` and `SSD`\n`MEM` actually represents the shared memory
+ of vineyardd.\n`SSD` represents the external storage of vineyardd.\nDefault
+ is as follows.\n tieredstore:\n levels:\n - level: 0\n mediumtype:
+ MEM\n quota: 4Gi\n\n\nChoose hostpath as the external storage
+ of vineyardd.\n tieredstore:\n levels:\n\t - level: 0\n mediumtype:
+ MEM\n quota: 4Gi\n\t\t high: \"0.8\"\n low: \"0.3\"\n
+ \ - level: 1\n mediumtype: SSD\n quota: 10Gi\n volumeType:
+ Hostpath\n path: /var/spill-path"
properties:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -495,71 +550,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -581,10 +632,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -594,9 +645,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -607,9 +658,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -627,8 +678,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -638,67 +690,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -708,30 +765,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -740,25 +792,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -766,9 +814,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -782,45 +831,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -830,17 +877,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -870,16 +915,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -890,10 +932,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -921,121 +962,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations
- that will be copied into the PVC when creating
- it. No other fields are allowed and will be
- rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into
- the PVC that gets created from this template.
- The same fields as in a PersistentVolumeClaim
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired
- access modes the volume should have. More
- info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used
- to specify either: * An existing VolumeSnapshot
- object (snapshot.storage.k8s.io/VolumeSnapshot)
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
* An existing PVC (PersistentVolumeClaim)
- If the provisioner or an external controller
- can support the specified data source,
- it will create a new volume based on the
- contents of the specified data source.
- When the AnyVolumeDataSource feature gate
- is enabled, dataSource contents will be
- copied to dataSourceRef, and dataSourceRef
- contents will be copied to dataSource
- when dataSourceRef.namespace is not specified.
- If the namespace is specified, then dataSourceRef
- will not be copied to dataSource.'
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1051,50 +1096,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the
- object from which to populate the volume
- with data, if a non-empty volume is desired.
- This may be any object from a non-empty
- API group (non core object) or a PersistentVolumeClaim
- object. When this field is specified,
- volume binding will only succeed if the
- type of the specified object matches some
- installed volume populator or dynamic
- provisioner. This field will replace the
- functionality of the dataSource field
- and as such if both fields are non-empty,
- they must have the same value. For backwards
- compatibility, when namespace isn''t specified
- in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the
- same value automatically if one of them
- is empty and the other is non-empty. When
- namespace is specified in dataSourceRef,
- dataSource isn''t set to the same value
- and must be empty. There are three important
- differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific
- types of objects, dataSourceRef allows
- any non-core object, as well as PersistentVolumeClaim
- objects. * While dataSource ignores disallowed
- values (dropping them), dataSourceRef
- preserves all values, and generates an
- error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using
- the namespace field of dataSourceRef requires
- the CrossNamespaceVolumeDataSource feature
- gate to be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for
- the resource being referenced. If
- APIGroup is not specified, the specified
- Kind must be in the core API group.
- For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource
@@ -1105,58 +1136,23 @@ spec:
being referenced
type: string
namespace:
- description: Namespace is the namespace
- of resource being referenced Note
- that when a namespace is specified,
- a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent
- namespace to allow that namespace's
- owner to accept the reference. See
- the ReferenceGrant documentation for
- details. (Alpha) This field requires
- the CrossNamespaceVolumeDataSource
- feature gate to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum
- resources the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to
- specify resource requirements that are
- lower than previous value but must still
- be higher than capacity recorded in the
- status field of the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names
- of resources, defined in spec.resourceClaims,
- that are used by this container. \n
- This is an alpha field and requires
- enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references
- one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the
- name of one entry in pod.spec.resourceClaims
- of the Pod where this field
- is used. It makes that resource
- available inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1164,9 +1160,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum
- amount of compute resources allowed.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -1175,13 +1171,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the
- minimum amount of compute resources
- required. If Requests is omitted for
- a container, it defaults to Limits
- if that is explicitly specified, otherwise
- to an implementation-defined value.
- More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -1193,10 +1187,9 @@ spec:
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.
+ 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
@@ -1204,20 +1197,16 @@ spec:
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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array
- of string values. If the operator
- is In or NotIn, the values array
- must be non-empty. If the operator
- is Exists or DoesNotExist, the
- values array must be empty.
- This array is replaced during
- a strategic merge patch.
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
items:
type: string
type: array
@@ -1229,27 +1218,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name
- of the StorageClass required by the claim.
- More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type
- of volume is required by the claim. Value
- of Filesystem is implied when not included
- in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -1266,21 +1265,20 @@ spec:
exposed to the pod.
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. TODO: how
- do we prevent errors in the filesystem from compromising
- the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target
@@ -1289,28 +1287,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide
- identifiers (wwids) Either wwids or combination
- of targetWWNs and lun must be set, but not both
- simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume
- resource that is provisioned/attached using an exec
- based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to
use for this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -1319,23 +1316,23 @@ spec:
extra command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1348,9 +1345,9 @@ spec:
control service being running
properties:
datasetName:
- description: datasetName is Name of the dataset
- stored as metadata -> name on the dataset for
- Flocker should be considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset.
@@ -1358,57 +1355,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk
- resource that is attached to a kubelet''s host machine
- and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -1421,54 +1416,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path.
- More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use
- host directory mounts and who can/can not mount host
- directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults
- to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support
@@ -1479,62 +1481,59 @@ spec:
iSCSI Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name
- that uses an iSCSI transport. Defaults to 'default'
- (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly
- setting in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI
target and initiator authentication
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -1542,39 +1541,45 @@ spec:
- targetPortal
type: object
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server.
- More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting
- in VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -1585,10 +1590,10 @@ spec:
machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon
@@ -1602,15 +1607,15 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx
@@ -1624,16 +1629,13 @@ spec:
secrets, configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -1642,24 +1644,114 @@ spec:
description: Projection that may be projected
along with other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the
configMap data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1668,29 +1760,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1698,10 +1782,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -1742,20 +1826,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1768,12 +1845,9 @@ spec:
start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name:
@@ -1807,19 +1881,14 @@ spec:
secret data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a
path within a volume.
@@ -1828,29 +1897,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1858,10 +1919,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether
@@ -1874,32 +1935,26 @@ spec:
about the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative
- to the mount point of the file to project
- the token into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -1912,29 +1967,30 @@ spec:
host that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default
- is no group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte
- volume to be mounted with read-only permissions.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults
- to serivceaccount user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references
@@ -1945,60 +2001,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount
- on the host that shares a pod''s lifetime. More info:
- https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More
- info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -2009,10 +2073,11 @@ spec:
volume attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the
@@ -2023,21 +2088,20 @@ spec:
ScaleIO Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2046,8 +2110,8 @@ spec:
communication with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage
- for a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -2059,9 +2123,9 @@ spec:
as configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume
- already created in the ScaleIO system that is
- associated with this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -2069,34 +2133,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should
- populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -2105,25 +2165,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2135,8 +2191,9 @@ spec:
Secret or its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -2144,44 +2201,42 @@ spec:
attached and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use
- for obtaining the StorageOS API credentials. If
- not specified, default values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name
- of the StorageOS volume. Volume names are only
- unique within a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -2189,10 +2244,10 @@ spec:
attached and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy
@@ -2213,9 +2268,9 @@ spec:
type: object
volumeType:
default: hostPath
- description: 'VolumeType is the volume type of the tier.
- Should be one of the three types: `hostPath`, `emptyDir`
- and `volumeTemplate`. If not set, defaults to hostPath.'
+ description: |-
+ VolumeType is the volume type of the tier. Should be one of the three types: `hostPath`, `emptyDir` and `volumeTemplate`.
+ If not set, defaults to hostPath.
enum:
- hostPath
- emptyDir
@@ -2226,42 +2281,44 @@ spec:
type: array
type: object
volumes:
- description: Volumes is the list of Kubernetes volumes that can be
- mounted by the vineyard components (Master and Worker). Default
- is null.
+ description: |-
+ Volumes is the list of Kubernetes volumes that can be mounted by the vineyard components (Master and Worker).
+ Default is null.
items:
description: Volume represents a named volume in a pod that may
be accessed by any container in the pod.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the readOnly
- setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent disk
- resource in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -2283,10 +2340,10 @@ spec:
storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -2295,8 +2352,9 @@ spec:
disk (only in managed availability set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -2307,8 +2365,9 @@ spec:
on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that contains
@@ -2326,8 +2385,9 @@ spec:
shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is a collection
- of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -2336,61 +2396,72 @@ spec:
rather than the full Ceph tree, default is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile is the
- path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is reference
- to the authentication secret for User, default is empty.
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados user name,
- default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached and
- mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount. Must
- be a filesystem type supported by the host operating system.
- Examples: "ext4", "xfs", "ntfs". Implicitly inferred to
- be "ext4" if unspecified. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a secret
- object containing parameters used to connect to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume in cinder.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -2400,27 +2471,25 @@ spec:
this volume
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.'
+ 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.
format: int32
type: integer
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -2428,22 +2497,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -2451,8 +2519,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap or its
@@ -2466,41 +2536,43 @@ spec:
feature).
properties:
driver:
- description: driver is the name of the CSI driver that handles
- this volume. Consult with your admin for the correct name
- as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs", "ntfs".
- If not provided, the empty value is passed to the associated
- CSI driver which will determine the default filesystem
- to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference to the
- secret object containing sensitive information to pass
- to the CSI driver to complete the CSI NodePublishVolume
- and NodeUnpublishVolume calls. This field is optional,
- and may be empty if no secret is required. If the secret
- object contains more than one secret, all secret references
- are passed.
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific properties
- that are passed to the CSI driver. Consult your driver's
- documentation for supported values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -2510,16 +2582,15 @@ spec:
that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created files
- by default. Must be a Optional: mode bits used to set
- permissions on created files by default. Must be an octal
- value between 0000 and 0777 or a decimal value between
- 0 and 511. YAML accepts both octal and decimal values,
- JSON requires decimal values for mode bits. Defaults to
- 0644. Directories within the path are not affected by
- this setting. This might be in conflict with other options
- that affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -2546,15 +2617,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -2565,10 +2634,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required for volumes,
@@ -2595,106 +2663,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory that
- shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage medium
- should back this directory. The default is "" which means
- to use the node''s default medium. Must be an empty string
- (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local storage
- required for this EmptyDir volume. The size limit is also
- applicable for memory medium. The maximum usage on memory
- medium EmptyDir would be the minimum value between the
- SizeLimit specified here and the sum of memory limits
- of all containers in a pod. The default is nil which means
- that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is handled
- by a cluster storage driver. The volume's lifecycle is tied
- to the pod that defines it - it will be created before the
- pod starts, and deleted when the pod is removed. \n Use this
- if: a) the volume is only needed while the pod runs, b) features
- of normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified through
- a storage class, and d) the storage driver supports dynamic
- volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource
- for more information on the connection between this volume
- type and PersistentVolumeClaim). \n Use PersistentVolumeClaim
- or one of the vendor-specific APIs for volumes that persist
- for longer than the lifecycle of an individual pod. \n Use
- CSI for light-weight local ephemeral volumes if the CSI driver
- is meant to be used that way - see the documentation of the
- driver for more information. \n A pod can use both types of
- ephemeral volumes and persistent volumes at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone PVC to
- provision the volume. The pod in which this EphemeralVolumeSource
- is embedded will be the owner of the PVC, i.e. the PVC
- will be deleted together with the pod. The name of the
- PVC will be `-` where `` is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too long). \n
- An existing PVC with that name that is not owned by the
- pod will *not* be used for the pod to avoid using an unrelated
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
volume by mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created PVC
- is meant to be used by the pod, the PVC has to updated
- with an owner reference to the pod once the pod exists.
- Normally this should not be necessary, but it may be useful
- when manually reconstructing a broken cluster. \n This
- field is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required, must
- not be nil."
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+
+ Required, must not be nil.
properties:
metadata:
- description: May contain labels and annotations that
- will be copied into the PVC when creating it. No other
- fields are allowed and will be rejected during validation.
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
type: object
spec:
- description: The specification for the PersistentVolumeClaim.
- The entire content is copied unchanged into the PVC
- that gets created from this template. The same fields
- as in a PersistentVolumeClaim are also valid here.
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
properties:
accessModes:
- description: 'accessModes contains the desired access
- modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
items:
type: string
type: array
dataSource:
- description: 'dataSource field can be used to specify
- either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
- * An existing PVC (PersistentVolumeClaim) If the
- provisioner or an external controller can support
- the specified data source, it will create a new
- volume based on the contents of the specified
- data source. When the AnyVolumeDataSource feature
- gate is enabled, dataSource contents will be copied
- to dataSourceRef, and dataSourceRef contents will
- be copied to dataSource when dataSourceRef.namespace
- is not specified. If the namespace is specified,
- then dataSourceRef will not be copied to dataSource.'
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -2710,45 +2797,36 @@ spec:
type: object
x-kubernetes-map-type: atomic
dataSourceRef:
- description: 'dataSourceRef specifies the object
- from which to populate the volume with data, if
- a non-empty volume is desired. This may be any
- object from a non-empty API group (non core object)
- or a PersistentVolumeClaim object. When this field
- is specified, volume binding will only succeed
- if the type of the specified object matches some
- installed volume populator or dynamic provisioner.
- This field will replace the functionality of the
- dataSource field and as such if both fields are
- non-empty, they must have the same value. For
- backwards compatibility, when namespace isn''t
- specified in dataSourceRef, both fields (dataSource
- and dataSourceRef) will be set to the same value
- automatically if one of them is empty and the
- other is non-empty. When namespace is specified
- in dataSourceRef, dataSource isn''t set to the
- same value and must be empty. There are three
- important differences between dataSource and dataSourceRef:
- * While dataSource only allows two specific types
- of objects, dataSourceRef allows any non-core
- object, as well as PersistentVolumeClaim objects.
- * While dataSource ignores disallowed values (dropping
- them), dataSourceRef preserves all values, and
- generates an error if a disallowed value is specified.
- * While dataSource only allows local objects,
- dataSourceRef allows objects in any namespaces.
- (Beta) Using this field requires the AnyVolumeDataSource
- feature gate to be enabled. (Alpha) Using the
- namespace field of dataSourceRef requires the
- CrossNamespaceVolumeDataSource feature gate to
- be enabled.'
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
properties:
apiGroup:
- description: APIGroup is the group for the resource
- being referenced. If APIGroup is not specified,
- the specified Kind must be in the core API
- group. For any other third-party types, APIGroup
- is required.
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
type: string
kind:
description: Kind is the type of resource being
@@ -2759,53 +2837,23 @@ spec:
referenced
type: string
namespace:
- description: Namespace is the namespace of resource
- being referenced Note that when a namespace
- is specified, a gateway.networking.k8s.io/ReferenceGrant
- object is required in the referent namespace
- to allow that namespace's owner to accept
- the reference. See the ReferenceGrant documentation
- for details. (Alpha) This field requires the
- CrossNamespaceVolumeDataSource feature gate
- to be enabled.
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
type: string
required:
- kind
- name
type: object
resources:
- description: 'resources represents the minimum resources
- the volume should have. If RecoverVolumeExpansionFailure
- feature is enabled users are allowed to specify
- resource requirements that are lower than previous
- value but must still be higher than capacity recorded
- in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
properties:
- claims:
- description: "Claims lists the names of resources,
- defined in spec.resourceClaims, that are used
- by this container. \n This is an alpha field
- and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable.
- It can only be set for containers."
- items:
- description: ResourceClaim references one
- entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: Name must match the name
- of one entry in pod.spec.resourceClaims
- of the Pod where this field is used.
- It makes that resource available inside
- a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -2813,8 +2861,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount
- of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -2823,12 +2872,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum
- amount of compute resources required. If Requests
- is omitted for a container, it defaults to
- Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info:
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
selector:
@@ -2840,28 +2888,24 @@ spec:
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.
+ 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: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
type: string
values:
- description: values is an array of string
- values. If the operator is In or NotIn,
- the values array must be non-empty.
- If the operator is Exists or DoesNotExist,
- the values array must be empty. This
- array is replaced during a strategic
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
merge patch.
items:
type: string
@@ -2874,24 +2918,37 @@ spec:
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.
+ 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
storageClassName:
- description: 'storageClassName is the name of the
- StorageClass required by the claim. More info:
- https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass
+ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
type: string
volumeMode:
- description: volumeMode defines what type of volume
- is required by the claim. Value of Filesystem
- is implied when not included in claim spec.
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
type: string
volumeName:
description: volumeName is the binding reference
@@ -2908,19 +2965,20 @@ spec:
pod.
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. TODO: how do we prevent errors in the
- filesystem from compromising the machine'
+ 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.
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun number'
format: int32
type: integer
readOnly:
- description: 'readOnly is Optional: Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
targetWWNs:
description: 'targetWWNs is Optional: FC target worldwide
@@ -2929,26 +2987,27 @@ spec:
type: string
type: array
wwids:
- description: 'wwids Optional: FC volume world wide identifiers
- (wwids) Either wwids or combination of targetWWNs and
- lun must be set, but not both simultaneously.'
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
items:
type: string
type: array
type: object
flexVolume:
- description: flexVolume represents a generic volume resource
- that is provisioned/attached using an exec based plugin.
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
properties:
driver:
description: driver is the name of the driver to use for
this volume.
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.
+ 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.
type: string
options:
additionalProperties:
@@ -2957,20 +3016,23 @@ spec:
command options if any.'
type: object
readOnly:
- description: 'readOnly is Optional: defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting in VolumeMounts.'
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.'
+ 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. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2983,9 +3045,9 @@ spec:
service being running
properties:
datasetName:
- description: datasetName is Name of the dataset stored as
- metadata -> name on the dataset for Flocker should be
- considered as deprecated
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
type: string
datasetUUID:
description: datasetUUID is the UUID of the dataset. This
@@ -2993,52 +3055,55 @@ spec:
type: string
type: object
gcePersistentDisk:
- description: 'gcePersistentDisk represents a GCE Disk resource
- that is attached to a kubelet''s host machine and then exposed
- to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
properties:
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.
+ 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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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'
+ 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
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'
+ 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
readOnly:
- description: 'readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+ 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:
- pdName
type: object
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.'
+ 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.
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.
+ 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.
type: string
repository:
description: repository is the URL
@@ -3051,51 +3116,61 @@ spec:
- repository
type: object
glusterfs:
- description: 'glusterfs represents a Glusterfs mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md'
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
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'
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
type: string
path:
- description: 'path is the Glusterfs volume path. More info:
- https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
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'
+ 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
type: boolean
required:
- endpoints
- path
type: object
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
- --- TODO(jonesdl) We need to restrict who can use host directory
- mounts and who can/can not mount host directories as read/write.'
+ 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
+ ---
+ TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
+ mount host directories as read/write.
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'
+ 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
type: string
type:
- description: 'type for HostPath Volume Defaults to "" More
- info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
type: string
required:
- path
type: object
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'
+ 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
properties:
chapAuthDiscovery:
description: chapAuthDiscovery defines whether support iSCSI
@@ -3106,56 +3181,59 @@ spec:
Session CHAP authentication
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
- description: initiatorName is the custom iSCSI Initiator
- Name. If initiatorName is specified with iscsiInterface
- simultaneously, new iSCSI interface : will be created for the connection.
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
type: string
iqn:
description: iqn is the target iSCSI Qualified Name.
type: string
iscsiInterface:
- description: iscsiInterface is the interface Name that uses
- an iSCSI transport. Defaults to 'default' (tcp).
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
type: string
lun:
description: lun represents iSCSI Target Lun number.
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).
+ 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).
items:
type: string
type: array
readOnly:
- description: readOnly here will force the ReadOnly setting
- in VolumeMounts. Defaults to false.
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
type: boolean
secretRef:
description: secretRef is the CHAP Secret for iSCSI target
and initiator authentication
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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).
+ 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
required:
- iqn
@@ -3163,43 +3241,51 @@ spec:
- 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'
+ 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
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'
+ 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
properties:
path:
- description: 'path that is exported by the NFS server. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ 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
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'
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
type: string
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'
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
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'
+ 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
readOnly:
- description: readOnly Will force the ReadOnly setting in
- VolumeMounts. Default false.
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
type: boolean
required:
- claimName
@@ -3209,10 +3295,10 @@ spec:
persistent disk attached and mounted on kubelets host machine
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.
+ 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.
type: string
pdID:
description: pdID is the ID that identifies Photon Controller
@@ -3226,14 +3312,15 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
volumeID:
description: volumeID uniquely identifies a Portworx volume
@@ -3246,14 +3333,13 @@ spec:
configmaps, and downward API
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.
+ 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.
format: int32
type: integer
sources:
@@ -3262,22 +3348,113 @@ spec:
description: Projection that may be projected along with
other supported volume types
properties:
+ clusterTrustBundle:
+ 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.
+ properties:
+ labelSelector:
+ 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.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ 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.
+ type: string
+ optional:
+ 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
configMap:
description: configMap information about the configMap
data to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3286,25 +3463,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3312,10 +3485,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -3354,17 +3527,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -3376,10 +3545,9 @@ spec:
with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -3412,17 +3580,14 @@ spec:
to project
properties:
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -3431,25 +3596,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3457,10 +3618,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify whether the
@@ -3473,29 +3634,26 @@ spec:
the serviceAccountToken data to project
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.
+ 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.
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.
+ 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.
format: int64
type: integer
path:
- description: path is the path relative to the
- mount point of the file to project the token
- into.
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
type: string
required:
- path
@@ -3508,28 +3666,30 @@ spec:
that shares a pod's lifetime
properties:
group:
- description: group to map volume access to Default is no
- group
+ description: |-
+ group to map volume access to
+ Default is no group
type: string
readOnly:
- description: readOnly here will force the Quobyte volume
- to be mounted with read-only permissions. Defaults to
- false.
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
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
+ 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
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
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
type: string
user:
- description: user to map volume access to Defaults to serivceaccount
- user
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
type: string
volume:
description: volume is a string that references an already
@@ -3540,54 +3700,68 @@ spec:
- volume
type: object
rbd:
- description: 'rbd represents a Rados Block Device mount on the
- host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md'
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
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
- TODO: how do we prevent errors in the filesystem from
- compromising the machine'
+ 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
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
- description: 'image is the rados image name. More info:
- https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
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'
+ 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
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'
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
items:
type: string
type: array
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'
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
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'
+ 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
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'
+ 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
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
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'
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
required:
- image
@@ -3598,9 +3772,11 @@ spec:
attached and mounted on Kubernetes nodes.
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".
+ 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".
type: string
gateway:
description: gateway is the host address of the ScaleIO
@@ -3611,17 +3787,20 @@ spec:
Protection Domain for the configured storage.
type: string
readOnly:
- description: readOnly Defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
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.
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -3630,8 +3809,8 @@ spec:
with Gateway, default false
type: boolean
storageMode:
- description: storageMode indicates whether the storage for
- a volume should be ThickProvisioned or ThinProvisioned.
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
type: string
storagePool:
@@ -3643,9 +3822,9 @@ spec:
configured in ScaleIO.
type: string
volumeName:
- description: volumeName is the name of a volume already
- created in the ScaleIO system that is associated with
- this volume source.
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
type: string
required:
- gateway
@@ -3653,31 +3832,30 @@ spec:
- system
type: object
secret:
- description: 'secret represents a secret that should populate
- this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
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.'
+ 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.
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 '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within a volume.
properties:
@@ -3685,22 +3863,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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 '..'.
+ 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 '..'.
type: string
required:
- key
@@ -3712,8 +3889,9 @@ spec:
its keys must be defined
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'
+ 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
type: string
type: object
storageos:
@@ -3721,40 +3899,42 @@ spec:
and mounted on Kubernetes nodes.
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.
+ 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.
type: string
readOnly:
- description: readOnly defaults to false (read/write). ReadOnly
- here will force the ReadOnly setting in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretRef:
- description: secretRef specifies the secret to use for obtaining
- the StorageOS API credentials. If not specified, default
- values will be attempted.
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
properties:
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeName:
- description: volumeName is the human-readable name of the
- StorageOS volume. Volume names are only unique within
- a namespace.
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
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.
+ 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.
type: string
type: object
vsphereVolume:
@@ -3762,10 +3942,10 @@ spec:
and mounted on kubelets host machine
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.
+ 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.
type: string
storagePolicyID:
description: storagePolicyID is the storage Policy Based
@@ -3787,34 +3967,40 @@ spec:
type: object
type: array
worker:
- description: Worker holds the configurations for Vineyard Worker component
+ description: |-
+ Worker holds the configurations for Vineyard Worker component
Represents the Vineyardd component in Vineyard
properties:
env:
additionalProperties:
type: string
- description: Environment variables that will be used by Vineyard
- component. For Master, refer to Etcd
- Configuration for more info Default is not set.
+ description: |-
+ Environment variables that will be used by Vineyard component.
+ For Master, refer to Etcd Configuration for more info
+ Default is not set.
type: object
image:
- description: The image of Vineyard component. For Master, the
- default image is `registry.aliyuncs.com/vineyard/vineyardd`
+ description: |-
+ The image of Vineyard component.
+ For Master, the default image is `registry.aliyuncs.com/vineyard/vineyardd`
For Worker, the default image is `registry.aliyuncs.com/vineyard/vineyardd`
- The default container registry is `docker.io`, you can change
- it by setting the image field
+ The default container registry is `docker.io`, you can change it by setting the image field
type: string
imagePullPolicy:
- description: The image pull policy of Vineyard component. Default
- is `IfNotPresent`.
+ description: |-
+ The image pull policy of Vineyard component.
+ Default is `IfNotPresent`.
type: string
imageTag:
- description: The image tag of Vineyard component. For Master,
- the default image tag is `v0.22.2`. For Worker, the default
- image tag is `v0.22.2`.
+ description: |-
+ The image tag of Vineyard component.
+ For Master, the default image tag is `v0.22.2`.
+ For Worker, the default image tag is `v0.22.2`.
type: string
networkMode:
- description: Whether to use hostnetwork or not Default is HostNetwork
+ description: |-
+ Whether to use hostnetwork or not
+ Default is HostNetwork
enum:
- HostNetwork
- ""
@@ -3823,26 +4009,35 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: 'NodeSelector is a selector to choose which nodes
- to launch the Vineyard component. E,g. {"disktype": "ssd"}'
+ description: |-
+ NodeSelector is a selector to choose which nodes to launch the Vineyard component.
+ E,g. {"disktype": "ssd"}
type: object
options:
additionalProperties:
type: string
- description: "Configurable options for Vineyard component. For
- Master, there is no configurable options. For Worker, support
- the following options. \n vineyardd.reserve.memory: (Bool) where
- to reserve memory for vineyardd If set to true, the memory quota
- will be counted to the vineyardd rather than the application.
- etcd.prefix: (String) the prefix of etcd key for vineyard objects
- wait.etcd.timeout: (String) the timeout period before waiting
- the etcd to be ready, in seconds \n Default value is as follows.
- \n vineyardd.reserve.memory: \"true\" etcd.prefix: \"/vineyard\"
- wait.etcd.timeout: \"120\""
+ description: |-
+ Configurable options for Vineyard component.
+ For Master, there is no configurable options.
+ For Worker, support the following options.
+
+
+ vineyardd.reserve.memory: (Bool) where to reserve memory for vineyardd
+ If set to true, the memory quota will be counted to the vineyardd rather than the application.
+ etcd.prefix: (String) the prefix of etcd key for vineyard objects
+ wait.etcd.timeout: (String) the timeout period before waiting the etcd to be ready, in seconds
+
+
+ Default value is as follows.
+
+
+ vineyardd.reserve.memory: "true"
+ etcd.prefix: "/vineyard"
+ wait.etcd.timeout: "120"
type: object
podMetadata:
- description: PodMetadata defines labels and annotations that will
- be propagated to Vineyard's pods including Master and Worker.
+ description: |-
+ PodMetadata defines labels and annotations that will be propagated to Vineyard's pods including Master and Worker.
Default is not set.
properties:
annotations:
@@ -3859,39 +4054,45 @@ spec:
ports:
additionalProperties:
type: integer
- description: Ports used by Vineyard component. For Master, the
- default client port is 2379 and peer port is 2380. For Worker,
- the default rpc port is 9600 and the default exporter port is
- 9144.
+ description: |-
+ Ports used by Vineyard component.
+ For Master, the default client port is 2379 and peer port is 2380.
+ For Worker, the default rpc port is 9600 and the default exporter port is 9144.
type: object
replicas:
- description: The replicas of Vineyard component. If not specified,
- defaults to 1. For worker, the replicas should not be greater
- than the number of nodes in the cluster
+ description: |-
+ The replicas of Vineyard component.
+ If not specified, defaults to 1.
+ For worker, the replicas should not be greater than the number of nodes in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources contains the resource requirements and
- limits for the Vineyard component. Default is not set. For Worker,
- when the options contains vineyardd.reserve.memory=true, the
- resources.request.memory for worker should be greater than tieredstore.levels[0].quota(aka
- vineyardd shared memory)
+ description: |-
+ Resources contains the resource requirements and limits for the Vineyard component.
+ Default is not set.
+ For Worker, when the options contains vineyardd.reserve.memory=true,
+ the resources.request.memory for worker should be greater than tieredstore.levels[0].quota(aka vineyardd shared memory)
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -3907,8 +4108,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -3917,49 +4119,53 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
- description: VolumeMounts specifies the volumes listed in ".spec.volumes"
- to mount into the vineyard runtime component's filesystem. It
- is useful for specifying a persistent storage. Default is not
- set.
+ description: |-
+ VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the vineyard runtime component's filesystem.
+ It is useful for specifying a persistent storage.
+ Default is not set.
items:
description: VolumeMount describes a mounting of a Volume within
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -3983,21 +4189,20 @@ spec:
affinity including node selector
properties:
preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes
- that satisfy the affinity expressions specified by this field,
- but it may choose a node that violates one or more of the expressions.
- The node that is most preferred is the one with the greatest
- sum of weights, i.e. for each node that meets all of the scheduling
- requirements (resource request, requiredDuringScheduling affinity
- expressions, etc.), compute a sum by iterating through the elements
- of this field and adding "weight" to the sum if the node matches
- the corresponding matchExpressions; the node(s) with the highest
- sum are the most preferred.
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
items:
- description: An empty preferred scheduling term matches all
- objects with implicit weight 0 (i.e. it's a no-op). A null
- preferred scheduling term matches no objects (i.e. is also
- a no-op).
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
properties:
preference:
description: A node selector term, associated with the corresponding
@@ -4007,28 +4212,26 @@ spec:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4041,28 +4244,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4084,47 +4285,46 @@ spec:
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field
- are not met at scheduling time, the pod will not be scheduled
- onto the node. If the affinity requirements specified by this
- field cease to be met at some point during pod execution (e.g.
- due to an update), the system may or may not try to eventually
- evict the pod from its node.
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms. The
terms are ORed.
items:
- description: A null or empty node selector term matches
- no objects. The requirements of them are ANDed. The TopologySelectorTerm
- type implements a subset of the NodeSelectorTerm.
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements by
node's labels.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4137,28 +4337,26 @@ spec:
description: A list of node selector requirements by
node's fields.
items:
- description: A node selector requirement is a selector
- that contains values, a key, and an operator that
- relates the key and values.
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
properties:
key:
description: The label key that the selector applies
to.
type: string
operator:
- description: Represents a key's relationship to
- a set of values. Valid operators are In, NotIn,
- Exists, DoesNotExist. Gt, and Lt.
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
type: string
values:
- description: An array of string values. If the
- operator is In or NotIn, the values array must
- be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. If the operator
- is Gt or Lt, the values array must have a single
- element, which will be interpreted as an integer.
- This array is replaced during a strategic merge
- patch.
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -4215,55 +4413,58 @@ spec:
type: object
type: array
currentFuseNumberScheduled:
- description: The total number of nodes that can be running the runtime
- Fuse pod (including nodes correctly running the runtime Fuse pod).
+ description: |-
+ The total number of nodes that can be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
currentMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
currentWorkerNumberScheduled:
- description: The total number of nodes that can be running the runtime
- worker pod (including nodes correctly running the runtime worker
- pod).
+ description: |-
+ The total number of nodes that can be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
desiredFuseNumberScheduled:
- description: The total number of nodes that should be running the
- runtime Fuse pod (including nodes correctly running the runtime
- Fuse pod).
+ description: |-
+ The total number of nodes that should be running the runtime Fuse
+ pod (including nodes correctly running the runtime Fuse pod).
format: int32
type: integer
desiredMasterNumberScheduled:
- description: The total number of nodes that should be running the
- runtime pod (including nodes correctly running the runtime master
- pod).
+ description: |-
+ The total number of nodes that should be running the runtime
+ pod (including nodes correctly running the runtime master pod).
format: int32
type: integer
desiredWorkerNumberScheduled:
- description: The total number of nodes that should be running the
- runtime worker pod (including nodes correctly running the runtime
- worker pod).
+ description: |-
+ The total number of nodes that should be running the runtime worker
+ pod (including nodes correctly running the runtime worker pod).
format: int32
type: integer
fuseNumberAvailable:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
+ description: |-
+ The number of nodes that should be running the
+ runtime Fuse pod and have one or more of the runtime Fuse pod running and
available (ready for at least spec.minReadySeconds)
format: int32
type: integer
fuseNumberReady:
- description: The number of nodes that should be running the runtime
- Fuse pod and have one or more of the runtime Fuse pod running and
- ready.
+ description: |-
+ The number of nodes that should be running the runtime Fuse pod and have one
+ or more of the runtime Fuse pod running and ready.
format: int32
type: integer
fuseNumberUnavailable:
- description: The number of nodes that should be running the runtime
- fuse pod and have none of the runtime fuse pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime fuse pod and have none of the runtime fuse pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
@@ -4274,9 +4475,9 @@ spec:
description: Reason for the condition's last transition.
type: string
masterNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have zero or more of the runtime master pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have zero
+ or more of the runtime master pod running and ready.
format: int32
type: integer
masterPhase:
@@ -4286,16 +4487,18 @@ spec:
description: Reason for Master's condition transition
type: string
mountTime:
- description: MountTime represents time last mount happened if Mounttime
- is earlier than master starting time, remount will be required
+ description: |-
+ MountTime represents time last mount happened
+ if Mounttime is earlier than master starting time, remount will be required
format: date-time
type: string
mounts:
description: MountPoints represents the mount points specified in
the bounded dataset
items:
- description: Mount describes a mounting.
Refer to Alluxio
- Storage Integrations for more info
+ description: |-
+ Mount describes a mounting.
+ Refer to Alluxio Storage Integrations for more info
properties:
encryptOptions:
description: The secret information
@@ -4335,10 +4538,11 @@ spec:
options:
additionalProperties:
type: string
- description: The Mount Options.
Refer to Mount
- Options.
The option has Prefix 'fs.' And you can
- Learn more from The
- Storage Integrations
+ description: |-
+ The Mount Options.
+ Refer to Mount Options.
+ The option has Prefix 'fs.' And you can Learn more from
+ The Storage Integrations
type: object
path:
description: The path of mount, if not set will be /{Name}
@@ -4364,20 +4568,22 @@ spec:
description: config map used to set configurations
type: string
workerNumberAvailable:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and available (ready for at least spec.minReadySeconds)
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have one or more of the runtime worker pod running and
+ available (ready for at least spec.minReadySeconds)
format: int32
type: integer
workerNumberReady:
- description: The number of nodes that should be running the runtime
- worker pod and have one or more of the runtime worker pod running
- and ready.
+ description: |-
+ The number of nodes that should be running the runtime worker pod and have one
+ or more of the runtime worker pod running and ready.
format: int32
type: integer
workerNumberUnavailable:
- description: The number of nodes that should be running the runtime
- worker pod and have none of the runtime worker pod running and available
+ description: |-
+ The number of nodes that should be running the
+ runtime worker pod and have none of the runtime worker pod running and available
(ready for at least spec.minReadySeconds)
format: int32
type: integer
diff --git a/cmd/alluxio/app/alluxio.go b/cmd/alluxio/app/alluxio.go
index e8dfa63c4a0..1493677b1cd 100644
--- a/cmd/alluxio/app/alluxio.go
+++ b/cmd/alluxio/app/alluxio.go
@@ -39,6 +39,7 @@ import (
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
)
var (
@@ -114,13 +115,15 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(controllers.GetConfigOrDieWithQPSAndBurst(kubeClientQPS, kubeClientBurst), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "alluxio.data.fluid.io",
- Port: 9443,
NewClient: controllers.NewFluidControllerClient,
})
if err != nil {
diff --git a/cmd/csi/app/csi.go b/cmd/csi/app/csi.go
index 86ff8affa91..e642385cd9a 100644
--- a/cmd/csi/app/csi.go
+++ b/cmd/csi/app/csi.go
@@ -37,6 +37,7 @@ import (
"k8s.io/apimachinery/pkg/runtime"
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
ctrl "sigs.k8s.io/controller-runtime"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
)
var (
@@ -101,10 +102,12 @@ func handle() {
newPprofServer(pprofAddr)
}
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
- Port: 9443,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
})
if err != nil {
diff --git a/cmd/dataset/app/dataset.go b/cmd/dataset/app/dataset.go
index 064a06ab8ef..0324ecab777 100644
--- a/cmd/dataset/app/dataset.go
+++ b/cmd/dataset/app/dataset.go
@@ -18,6 +18,7 @@ package app
import (
"os"
+ "sigs.k8s.io/controller-runtime/pkg/client"
"time"
"github.com/spf13/cobra"
@@ -33,6 +34,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/cache"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
"github.com/fluid-cloudnative/fluid"
datav1alpha1 "github.com/fluid-cloudnative/fluid/api/v1alpha1"
@@ -121,14 +123,16 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(controllers.GetConfigOrDieWithQPSAndBurst(kubeClientQPS, kubeClientBurst), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "dataset.data.fluid.io",
- Port: 9443,
- NewCache: NewCache(scheme),
+ Cache: NewCacheOptions(),
NewClient: controllers.NewFluidControllerClient,
})
if err != nil {
@@ -232,21 +236,22 @@ func handle() {
}
}
-func NewCache(scheme *runtime.Scheme) cache.NewCacheFunc {
- selectors := make(cache.SelectorsByObject, 1)
+func NewCacheOptions() cache.Options {
+ var cronJobKey client.Object
if compatibility.IsBatchV1CronJobSupported() {
- selectors[&batchv1.CronJob{}] = cache.ObjectSelector{Label: labels.SelectorFromSet(labels.Set{
- common.JobPolicy: common.CronPolicy,
- })}
+ cronJobKey = &batchv1.CronJob{}
} else {
- selectors[&batchv1beta1.CronJob{}] = cache.ObjectSelector{Label: labels.SelectorFromSet(labels.Set{
- common.JobPolicy: common.CronPolicy,
- })}
+ cronJobKey = &batchv1beta1.CronJob{}
}
- return cache.BuilderWithOptions(cache.Options{
- Scheme: scheme,
- SelectorsByObject: selectors,
- })
+ return cache.Options{
+ ByObject: map[client.Object]cache.ByObject{
+ cronJobKey: {
+ Label: labels.SelectorFromSet(labels.Set{
+ common.JobPolicy: common.CronPolicy,
+ }),
+ },
+ },
+ }
}
diff --git a/cmd/efc/app/efc.go b/cmd/efc/app/efc.go
index bb880b460a8..9ffe3c526c3 100644
--- a/cmd/efc/app/efc.go
+++ b/cmd/efc/app/efc.go
@@ -34,6 +34,7 @@ import (
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
"github.com/fluid-cloudnative/fluid"
datav1alpha1 "github.com/fluid-cloudnative/fluid/api/v1alpha1"
@@ -113,13 +114,15 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(controllers.GetConfigOrDieWithQPSAndBurst(kubeClientQPS, kubeClientBurst), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "efc.data.fluid.io",
- Port: 9443,
NewClient: controllers.NewFluidControllerClient,
})
if err != nil {
diff --git a/cmd/fluidapp/app/fluidapp.go b/cmd/fluidapp/app/fluidapp.go
index 15c71b969fb..c0d533facd6 100644
--- a/cmd/fluidapp/app/fluidapp.go
+++ b/cmd/fluidapp/app/fluidapp.go
@@ -18,13 +18,16 @@ package app
import (
"github.com/fluid-cloudnative/fluid/pkg/common"
+
"github.com/fluid-cloudnative/fluid/pkg/controllers/v1alpha1/fluidapp/dataflowaffinity"
"github.com/fluid-cloudnative/fluid/pkg/dataflow"
utilfeature "github.com/fluid-cloudnative/fluid/pkg/utils/feature"
batchv1 "k8s.io/api/batch/v1"
+
"k8s.io/apimachinery/pkg/labels"
"os"
"sigs.k8s.io/controller-runtime/pkg/cache"
+ "sigs.k8s.io/controller-runtime/pkg/client"
"github.com/fluid-cloudnative/fluid"
"github.com/fluid-cloudnative/fluid/pkg/controllers/v1alpha1/fluidapp"
@@ -38,6 +41,7 @@ import (
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
)
var (
@@ -91,14 +95,16 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "fluidapp.data.fluid.io",
- Port: 9443,
- NewCache: NewCache(scheme),
+ Cache: newCacheOptions(),
})
if err != nil {
setupLog.Error(err, "unable to start fluid app manager")
@@ -135,10 +141,9 @@ func handle() {
}
}
-func NewCache(scheme *runtime.Scheme) cache.NewCacheFunc {
+func newCacheOptions() cache.Options {
options := cache.Options{
- Scheme: scheme,
- SelectorsByObject: cache.SelectorsByObject{
+ ByObject: map[client.Object]cache.ByObject{
&corev1.Pod{}: {
Label: labels.SelectorFromSet(labels.Set{
// watch pods managed by fluid, like data operation pods, serverless app pods.
@@ -148,7 +153,7 @@ func NewCache(scheme *runtime.Scheme) cache.NewCacheFunc {
},
}
if dataflow.Enabled(dataflow.DataflowAffinity) {
- options.SelectorsByObject[&batchv1.Job{}] = cache.ObjectSelector{
+ options.ByObject[&batchv1.Job{}] = cache.ByObject{
// watch data operation job
Label: labels.SelectorFromSet(labels.Set{
// only data operations create job resource and the jobs created by cronjob do not have this label.
@@ -156,5 +161,5 @@ func NewCache(scheme *runtime.Scheme) cache.NewCacheFunc {
}),
}
}
- return cache.BuilderWithOptions(options)
+ return options
}
diff --git a/cmd/goosefs/app/goosefs.go b/cmd/goosefs/app/goosefs.go
index e943dbffde6..b48e953ff2b 100644
--- a/cmd/goosefs/app/goosefs.go
+++ b/cmd/goosefs/app/goosefs.go
@@ -34,6 +34,7 @@ import (
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
)
var (
@@ -98,13 +99,15 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "goosefs.data.fluid.io",
- Port: 9443,
})
if err != nil {
setupLog.Error(err, "unable to start goosefsruntime manager")
diff --git a/cmd/jindo/app/jindo.go b/cmd/jindo/app/jindo.go
index 786db05eefe..093797aa93c 100644
--- a/cmd/jindo/app/jindo.go
+++ b/cmd/jindo/app/jindo.go
@@ -41,6 +41,7 @@ import (
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
)
var (
@@ -121,13 +122,15 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(controllers.GetConfigOrDieWithQPSAndBurst(kubeClientQPS, kubeClientBurst), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "jindo.data.fluid.io",
- Port: 9443,
NewClient: controllers.NewFluidControllerClient,
})
if err != nil {
diff --git a/cmd/juicefs/app/juicefs.go b/cmd/juicefs/app/juicefs.go
index 0e5618b84a0..1d21d2b16b9 100644
--- a/cmd/juicefs/app/juicefs.go
+++ b/cmd/juicefs/app/juicefs.go
@@ -30,10 +30,10 @@ import (
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
"k8s.io/client-go/rest"
ctrl "sigs.k8s.io/controller-runtime"
- "sigs.k8s.io/controller-runtime/pkg/cache"
"sigs.k8s.io/controller-runtime/pkg/client"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
"github.com/fluid-cloudnative/fluid/pkg/controllers"
"github.com/fluid-cloudnative/fluid/pkg/ddc/base/portallocator"
@@ -121,20 +121,21 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
- NewControllerClient := func(cache cache.Cache, config *rest.Config, options client.Options, uncachedObjects ...client.Object) (client.Client, error) {
- return controllers.NewFluidControllerClient(cache, config, options,
- append(uncachedObjects, &rbacv1.RoleBinding{}, &rbacv1.Role{}, &corev1.ServiceAccount{})...,
- )
+ NewControllerClient := func(config *rest.Config, options client.Options) (client.Client, error) {
+ options.Cache.DisableFor = append(options.Cache.DisableFor, &rbacv1.RoleBinding{}, &rbacv1.Role{}, &corev1.ServiceAccount{})
+ return controllers.NewFluidControllerClient(config, options)
}
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(controllers.GetConfigOrDieWithQPSAndBurst(kubeClientQPS, kubeClientBurst), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "juicefs.data.fluid.io",
- Port: 9443,
- NewCache: juicefsctl.NewCache(scheme),
+ Cache: juicefsctl.NewCacheOption(),
NewClient: NewControllerClient,
})
if err != nil {
diff --git a/cmd/thin/app/thin.go b/cmd/thin/app/thin.go
index e20e01561c2..8977e8ba1c4 100644
--- a/cmd/thin/app/thin.go
+++ b/cmd/thin/app/thin.go
@@ -32,6 +32,7 @@ import (
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
"github.com/fluid-cloudnative/fluid"
datav1alpha1 "github.com/fluid-cloudnative/fluid/api/v1alpha1"
@@ -117,14 +118,16 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(controllers.GetConfigOrDieWithQPSAndBurst(kubeClientQPS, kubeClientBurst), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "thin.data.fluid.io",
- Port: 9443,
- NewCache: thinctl.NewCache(scheme),
+ Cache: thinctl.NewCache(),
NewClient: controllers.NewFluidControllerClient,
})
if err != nil {
diff --git a/cmd/vineyard/app/vineyard.go b/cmd/vineyard/app/vineyard.go
index e64e1a6848b..be3bd0b1807 100644
--- a/cmd/vineyard/app/vineyard.go
+++ b/cmd/vineyard/app/vineyard.go
@@ -28,6 +28,7 @@ import (
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/controller"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
"github.com/fluid-cloudnative/fluid"
datav1alpha1 "github.com/fluid-cloudnative/fluid/api/v1alpha1"
@@ -111,13 +112,15 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, development)
+ // the default webhook server port is 9443, no need to set
mgr, err := ctrl.NewManager(controllers.GetConfigOrDieWithQPSAndBurst(kubeClientQPS, kubeClientBurst), ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
LeaderElection: enableLeaderElection,
LeaderElectionNamespace: leaderElectionNamespace,
LeaderElectionID: "vineyard.data.fluid.io",
- Port: 9443,
})
if err != nil {
setupLog.Error(err, "unable to start thinruntime manager")
diff --git a/cmd/webhook/app/webhook.go b/cmd/webhook/app/webhook.go
index de55d35849d..fa704147156 100644
--- a/cmd/webhook/app/webhook.go
+++ b/cmd/webhook/app/webhook.go
@@ -19,8 +19,6 @@ package app
import (
"flag"
"github.com/fluid-cloudnative/fluid/pkg/webhook/plugins"
- "os"
-
"github.com/spf13/cobra"
zapOpt "go.uber.org/zap"
"go.uber.org/zap/zapcore"
@@ -28,10 +26,13 @@ import (
"k8s.io/apimachinery/pkg/fields"
"k8s.io/apimachinery/pkg/runtime"
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
+ "os"
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/cache"
"sigs.k8s.io/controller-runtime/pkg/client"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
+ "sigs.k8s.io/controller-runtime/pkg/webhook"
"github.com/fluid-cloudnative/fluid"
datav1alpha1 "github.com/fluid-cloudnative/fluid/api/v1alpha1"
@@ -112,20 +113,25 @@ func handle() {
utils.NewPprofServer(setupLog, pprofAddr, fullGoProfile)
mgr, err := ctrl.NewManager(cfg, ctrl.Options{
- Scheme: scheme,
- MetricsBindAddress: metricsAddr,
- Port: webhookPort,
- CertDir: certDir,
- LeaderElection: false,
- LeaderElectionID: "webhook.data.fluid.io",
- NewCache: cache.BuilderWithOptions(cache.Options{
- Scheme: scheme,
- SelectorsByObject: cache.SelectorsByObject{
+ Scheme: scheme,
+ Metrics: metricsserver.Options{
+ BindAddress: metricsAddr,
+ },
+ WebhookServer: webhook.NewServer(
+ webhook.Options{
+ Port: webhookPort,
+ CertDir: certDir,
+ },
+ ),
+ LeaderElection: false,
+ LeaderElectionID: "webhook.data.fluid.io",
+ Cache: cache.Options{
+ ByObject: map[client.Object]cache.ByObject{
&admissionregistrationv1.MutatingWebhookConfiguration{}: {
Field: fields.SelectorFromSet(fields.Set{"metadata.name": common.WebhookName}),
},
},
- }),
+ },
})
if err != nil {
diff --git a/config/crd/bases/data.fluid.io_alluxioruntimes.yaml b/config/crd/bases/data.fluid.io_alluxioruntimes.yaml
index f218f09138e..43dc5c75e54 100644
--- a/config/crd/bases/data.fluid.io_alluxioruntimes.yaml
+++ b/config/crd/bases/data.fluid.io_alluxioruntimes.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.1
+ controller-gen.kubebuilder.io/version: v0.14.0
name: alluxioruntimes.data.fluid.io
spec:
group: data.fluid.io
@@ -65,14 +65,19 @@ spec:
description: AlluxioRuntime is the Schema for the alluxioruntimes API
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
@@ -148,37 +153,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -194,8 +206,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -204,10 +217,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -218,33 +232,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -266,8 +283,9 @@ spec:
type: integer
type: object
disablePrometheus:
- description: Disable monitoring for Alluxio Runtime Prometheus is
- enabled by default
+ description: |-
+ Disable monitoring for Alluxio Runtime
+ Prometheus is enabled by default
type: boolean
fuse:
description: The component spec of Alluxio Fuse
@@ -278,11 +296,12 @@ spec:
type: string
type: array
cleanPolicy:
- description: 'CleanPolicy decides when to clean Alluxio Fuse pods.
+ description: |-
+ CleanPolicy decides when to clean Alluxio Fuse pods.
Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted
- OnDemand cleans fuse pod once the fuse pod on some node is not
- needed OnRuntimeDeleted cleans fuse pod only when the cache
- runtime is deleted Defaults to OnRuntimeDeleted'
+ OnDemand cleans fuse pod once the fuse pod on some node is not needed
+ OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted
+ Defaults to OnRuntimeDeleted
type: string
env:
additionalProperties:
@@ -315,9 +334,9 @@ spec:
nodeSelector:
additionalProperties:
type: string
- description: NodeSelector is a selector which must be true for
- the fuse client to fit on a node, this option only effect when
- global is enabled
+ description: |-
+ NodeSelector is a selector which must be true for the fuse client to fit on a node,
+ this option only effect when global is enabled
type: object
podMetadata:
description: PodMetadata defines labels and annotations that will
@@ -337,30 +356,36 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for Alluxio System.
- Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for Alluxio System.
+ Refer to Alluxio Configuration Properties for more info
type: object
resources:
- description: Resources that will be requested by Alluxio Fuse.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by Alluxio Fuse.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -376,8 +401,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -386,10 +412,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -400,33 +427,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -435,12 +465,11 @@ spec:
type: array
type: object
hadoopConfig:
- description: Name of the configMap used to support HDFS configurations
- when using HDFS as Alluxio's UFS. The configMap must be in the same
- namespace with the AlluxioRuntime. The configMap should contain
- user-specific HDFS conf files in it. For now, only "hdfs-site.xml"
- and "core-site.xml" are supported. It must take the filename of
- the conf file as the key and content of the file as the value.
+ description: |-
+ Name of the configMap used to support HDFS configurations when using HDFS as Alluxio's UFS. The configMap
+ must be in the same namespace with the AlluxioRuntime. The configMap should contain user-specific HDFS conf files in it.
+ For now, only "hdfs-site.xml" and "core-site.xml" are supported. It must take the filename of the conf file as the key and content
+ of the file as the value.
type: string
initUsers:
description: The spec of init users
@@ -464,25 +493,31 @@ spec:
2.3.0-SNAPSHOT)
type: string
resources:
- description: Resources that will be requested by initialize the
- users for runtime.
Resources are not allowed for ephemeral
- containers. Ephemeral containers use spare resources already
- allocated to the pod.
+ description: |-
+ Resources that will be requested by initialize the users for runtime.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -498,8 +533,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -508,10 +544,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
type: object
@@ -569,37 +606,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -615,8 +659,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -625,10 +670,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -639,33 +685,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -727,37 +776,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -773,8 +829,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -783,10 +840,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -797,33 +855,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -846,25 +907,22 @@ spec:
properties:
gracePeriodSeconds:
default: 60
- description: Optional duration in seconds the cache needs
- to clean gracefully. May be decreased in delete runtime
- request. Value must be non-negative integer. The value zero
- indicates clean immediately via the timeout command (no
- opportunity to shut down). If this value is nil, the default
- grace period will be used instead. The grace period is the
- duration in seconds after the processes running in the pod
- are sent a termination signal and the time when the processes
- are forcibly halted with timeout command. Set this value
- longer than the expected cleanup time for your process.
+ description: |-
+ Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request.
+ Value must be non-negative integer. The value zero indicates clean immediately via the timeout
+ command (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with timeout command.
+ Set this value longer than the expected cleanup time for your process.
format: int32
type: integer
maxRetryAttempts:
default: 3
- description: Optional max retry Attempts when cleanCache function
- returns an error after execution, runtime attempts to run
- it three more times by default. With Maximum Retry Attempts,
- you can customize the maximum number of retries. This gives
- you the option to continue processing retries.
+ description: |-
+ Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts
+ to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number
+ of retries. This gives you the option to continue processing retries.
format: int32
type: integer
type: object
@@ -933,37 +991,44 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for the Alluxio component.
-
Refer to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for the Alluxio component.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
- description: Replicas is the desired number of replicas of the
- given template. If unspecified, defaults to 1. replicas is the
- min replicas of dataset in the cluster
+ description: |-
+ Replicas is the desired number of replicas of the given template.
+ If unspecified, defaults to 1.
+ replicas is the min replicas of dataset in the cluster
format: int32
minimum: 1
type: integer
resources:
- description: Resources that will be requested by the Alluxio component.
-
Resources are not allowed for ephemeral containers.
- Ephemeral containers use spare resources already allocated to
- the pod.
+ description: |-
+ Resources that will be requested by the Alluxio component.
+
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
properties:
claims:
- description: "Claims lists the names of resources, defined
- in spec.resourceClaims, that are used by this container.
- \n This is an alpha field and requires enabling the DynamicResourceAllocation
- feature gate. \n This field is immutable. It can only be
- set for containers."
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+
+ This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
- description: Name must match the name of one entry in
- pod.spec.resourceClaims of the Pod where this field
- is used. It makes that resource available inside a
- container.
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
type: string
required:
- name
@@ -979,8 +1044,9 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Limits describes the maximum amount of compute
- resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
@@ -989,10 +1055,11 @@ spec:
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
- description: 'Requests describes the minimum amount of compute
- resources required. If Requests is omitted for a container,
- it defaults to Limits if that is explicitly specified, otherwise
- to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
volumeMounts:
@@ -1003,33 +1070,36 @@ spec:
a container.
properties:
mountPath:
- description: Path within the container at which the volume
- should be mounted. Must not contain ':'.
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
type: string
mountPropagation:
- description: mountPropagation determines how mounts are
- propagated from the host to container and the other way
- around. When not set, MountPropagationNone is used. This
- field is beta in 1.10.
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
type: string
name:
description: This must match the Name of a Volume.
type: string
readOnly:
- description: Mounted read-only if true, read-write otherwise
- (false or unspecified). Defaults to false.
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
type: boolean
subPath:
- description: Path within the volume from which the container's
- volume should be mounted. Defaults to "" (volume's root).
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
type: string
subPathExpr:
- description: Expanded path within the volume from which
- the container's volume should be mounted. Behaves similarly
- to SubPath but environment variable references $(VAR_NAME)
- are expanded using the container's environment. Defaults
- to "" (volume's root). SubPathExpr and SubPath are mutually
- exclusive.
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
type: string
required:
- mountPath
@@ -1055,9 +1125,9 @@ spec:
properties:
additionalProperties:
type: string
- description: Configurable properties for Alluxio system.
Refer
- to Alluxio
- Configuration Properties for more info
+ description: |-
+ Configurable properties for Alluxio system.
+ Refer to Alluxio Configuration Properties for more info
type: object
replicas:
description: The replicas of the worker, need to be specified
@@ -1092,9 +1162,9 @@ spec:
levels:
description: configurations for multiple tiers
items:
- description: Level describes configurations a tier needs.
- Refer to Configuring
- Tiered Storage for more info
+ description: |-
+ Level describes configurations a tier needs.
+ Refer to Configuring Tiered Storage for more info
properties:
high:
description: Ratio of high watermark of the tier (e.g. 0.9)
@@ -1111,71 +1181,67 @@ spec:
- HDD
type: string
path:
- description: 'File paths to be used for the tier. Multiple
- paths are supported. Multiple paths should be separated
- with comma. For example: "/mnt/cache1,/mnt/cache2".'
+ description: |-
+ File paths to be used for the tier. Multiple paths are supported.
+ Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
minLength: 1
type: string
quota:
anyOf:
- type: integer
- type: string
- description: Quota for the whole tier. (e.g. 100Gi) Please
- note that if there're multiple paths used for this tierstore,
- the quota will be equally divided into these paths. If
- you'd like to set quota for each, path, see QuotaList
- for more information.
+ description: |-
+ Quota for the whole tier. (e.g. 100Gi)
+ Please note that if there're multiple paths used for this tierstore,
+ the quota will be equally divided into these paths. If you'd like to
+ set quota for each, path, see QuotaList for more information.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
quotaList:
- description: QuotaList are quotas used to set quota on multiple
- paths. Quotas should be separated with comma. Quotas in
- this list will be set to paths with the same order in
- Path. For example, with Path defined with "/mnt/cache1,/mnt/cache2"
- and QuotaList set to "100Gi, 50Gi", then we get 100GiB
- cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
- Also note that num of quotas must be consistent with the
- num of paths defined in Path.
+ description: |-
+ QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
+ Quotas in this list will be set to paths with the same order in Path.
+ For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
+ then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
+ Also note that num of quotas must be consistent with the num of paths defined in Path.
pattern: ^((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+)))),)+((\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?)$
type: string
volumeSource:
- description: VolumeSource is the volume source of the tier.
- It follows the form of corev1.VolumeSource. For now, users
- should only specify VolumeSource when VolumeType is set
- to emptyDir.
+ description: |-
+ VolumeSource is the volume source of the tier. It follows the form of corev1.VolumeSource.
+ For now, users should only specify VolumeSource when VolumeType is set to emptyDir.
properties:
awsElasticBlockStore:
- description: 'awsElasticBlockStore represents an AWS
- Disk resource that is attached to a kubelet''s host
- machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
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#awselasticblockstore
- TODO: how do we prevent errors in the filesystem
- from compromising the machine'
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
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).'
+ 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).
format: int32
type: integer
readOnly:
- description: 'readOnly value true will force the
- readOnly setting in VolumeMounts. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: boolean
volumeID:
- description: 'volumeID is unique ID of the persistent
- disk resource in AWS (Amazon EBS volume). More
- info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
type: string
required:
- volumeID
@@ -1197,10 +1263,10 @@ spec:
the blob storage
type: string
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.
+ 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.
type: string
kind:
description: 'kind expected values are Shared: multiple
@@ -1210,9 +1276,9 @@ spec:
set). defaults to shared'
type: string
readOnly:
- description: readOnly Defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
required:
- diskName
@@ -1223,9 +1289,9 @@ spec:
mount on the host and bind mount to the pod.
properties:
readOnly:
- description: readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts.
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
type: boolean
secretName:
description: secretName is the name of secret that
@@ -1243,8 +1309,9 @@ spec:
host that shares a pod's lifetime
properties:
monitors:
- description: 'monitors is Required: Monitors is
- a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
items:
type: string
type: array
@@ -1254,67 +1321,72 @@ spec:
is /'
type: string
readOnly:
- description: 'readOnly is Optional: Defaults to
- false (read/write). ReadOnly here will force the
- ReadOnly setting in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: boolean
secretFile:
- description: 'secretFile is Optional: SecretFile
- is the path to key ring for User, default is /etc/ceph/user.secret
- More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
secretRef:
- description: 'secretRef is Optional: SecretRef is
- reference to the authentication secret for User,
- default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
- description: 'user is optional: User is the rados
- user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
type: string
required:
- monitors
type: object
cinder:
- description: 'cinder represents a cinder volume attached
- and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
properties:
fsType:
- description: 'fsType is the filesystem type to mount.
- Must be a filesystem type supported by the host
- operating system. Examples: "ext4", "xfs", "ntfs".
- Implicitly inferred to be "ext4" if unspecified.
- More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
readOnly:
- description: 'readOnly defaults to false (read/write).
- ReadOnly here will force the ReadOnly setting
- in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: boolean
secretRef:
- description: 'secretRef is optional: points to a
- secret object containing parameters used to connect
- to OpenStack.'
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
volumeID:
- description: 'volumeID used to identify the volume
- in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
type: string
required:
- volumeID
@@ -1324,30 +1396,25 @@ spec:
populate this volume
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.'
+ 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.
format: int32
type: integer
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
- '..'.
+ 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 '..'.
items:
description: Maps a string key to a path within
a volume.
@@ -1356,25 +1423,21 @@ spec:
description: key is the key to project.
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.'
+ 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.
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
- '..'.
+ 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 '..'.
type: string
required:
- key
@@ -1382,9 +1445,10 @@ spec:
type: object
type: array
name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the ConfigMap
@@ -1398,45 +1462,43 @@ spec:
CSI drivers (Beta feature).
properties:
driver:
- description: driver is the name of the CSI driver
- that handles this volume. Consult with your admin
- for the correct name as registered in the cluster.
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
type: string
fsType:
- description: fsType to mount. Ex. "ext4", "xfs",
- "ntfs". If not provided, the empty value is passed
- to the associated CSI driver which will determine
- the default filesystem to apply.
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
type: string
nodePublishSecretRef:
- description: nodePublishSecretRef is a reference
- to the secret object containing sensitive information
- to pass to the CSI driver to complete the CSI
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
NodePublishVolume and NodeUnpublishVolume calls.
- This field is optional, and may be empty if no
- secret is required. If the secret object contains
- more than one secret, all secret references are
- passed.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
properties:
name:
- description: 'Name of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion,
- kind, uid?'
+ description: |-
+ Name of the referent.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
readOnly:
- description: readOnly specifies a read-only configuration
- for the volume. Defaults to false (read/write).
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
type: boolean
volumeAttributes:
additionalProperties:
type: string
- description: volumeAttributes stores driver-specific
- properties that are passed to the CSI driver.
- Consult your driver's documentation for supported
- values.
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
type: object
required:
- driver
@@ -1446,17 +1508,15 @@ spec:
the pod that should populate this volume
properties:
defaultMode:
- description: 'Optional: mode bits to use on created
- files by default. Must be a Optional: mode bits
- used to set permissions on created files by default.
- Must be an octal value between 0000 and 0777 or
- a decimal value between 0 and 511. YAML accepts
- both octal and decimal values, JSON requires decimal
- values for mode bits. Defaults to 0644. Directories
- within the path are not affected by this setting.
- This might be in conflict with other options that
- affect the file mode, like fsGroup, and the result
- can be other mode bits set.'
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
format: int32
type: integer
items:
@@ -1486,16 +1546,13 @@ spec:
type: object
x-kubernetes-map-type: atomic
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.'
+ 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.
format: int32
type: integer
path:
@@ -1506,10 +1563,9 @@ spec:
the relative path must not start with ''..'''
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.'
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
properties:
containerName:
description: 'Container name: required
@@ -1537,121 +1593,125 @@ spec:
type: array
type: object
emptyDir:
- description: 'emptyDir represents a temporary directory
- that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
properties:
medium:
- description: 'medium represents what type of storage
- medium should back this directory. The default
- is "" which means to use the node''s default medium.
- Must be an empty string (default) or Memory. More
- info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
type: string
sizeLimit:
anyOf:
- type: integer
- type: string
- description: 'sizeLimit is the total amount of local
- storage required for this EmptyDir volume. The
- size limit is also applicable for memory medium.
- The maximum usage on memory medium EmptyDir would
- be the minimum value between the SizeLimit specified
- here and the sum of memory limits of all containers
- in a pod. The default is nil which means that
- the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
ephemeral:
- description: "ephemeral represents a volume that is
- handled by a cluster storage driver. The volume's
- lifecycle is tied to the pod that defines it - it
- will be created before the pod starts, and deleted
- when the pod is removed. \n Use this if: a) the volume
- is only needed while the pod runs, b) features of
- normal volumes like restoring from snapshot or capacity
- tracking are needed, c) the storage driver is specified
- through a storage class, and d) the storage driver
- supports dynamic volume provisioning through a PersistentVolumeClaim
- (see EphemeralVolumeSource for more information on
- the connection between this volume type and PersistentVolumeClaim).
- \n Use PersistentVolumeClaim or one of the vendor-specific
- APIs for volumes that persist for longer than the
- lifecycle of an individual pod. \n Use CSI for light-weight
- local ephemeral volumes if the CSI driver is meant
- to be used that way - see the documentation of the
- driver for more information. \n A pod can use both
- types of ephemeral volumes and persistent volumes
- at the same time."
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
properties:
volumeClaimTemplate:
- description: "Will be used to create a stand-alone
- PVC to provision the volume. The pod in which
- this EphemeralVolumeSource is embedded will be
- the owner of the PVC, i.e. the PVC will be deleted
- together with the pod. The name of the PVC will
- be `-` where ``
- is the name from the `PodSpec.Volumes` array entry.
- Pod validation will reject the pod if the concatenated
- name is not valid for a PVC (for example, too
- long). \n An existing PVC with that name that
- is not owned by the pod will *not* be used for
- the pod to avoid using an unrelated volume by
- mistake. Starting the pod is then blocked until
- the unrelated PVC is removed. If such a pre-created
- PVC is meant to be used by the pod, the PVC has
- to updated with an owner reference to the pod
- once the pod exists. Normally this should not
- be necessary, but it may be useful when manually
- reconstructing a broken cluster. \n This field
- is read-only and no changes will be made by Kubernetes
- to the PVC after it has been created. \n Required,
- must not be nil."
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `