187 lines
9.2 KiB
Django/Jinja
187 lines
9.2 KiB
Django/Jinja
---
|
|
apiVersion: apiextensions.k8s.io/v1beta1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.2.5
|
|
api-approved.kubernetes.io: "https://github.com/kubernetes-csi/external-snapshotter/pull/260"
|
|
creationTimestamp: null
|
|
name: volumesnapshots.snapshot.storage.k8s.io
|
|
spec:
|
|
additionalPrinterColumns:
|
|
- JSONPath: .status.readyToUse
|
|
description: Indicates if a snapshot is ready to be used to restore a volume.
|
|
name: ReadyToUse
|
|
type: boolean
|
|
- JSONPath: .spec.source.persistentVolumeClaimName
|
|
description: Name of the source PVC from where a dynamically taken snapshot will
|
|
be created.
|
|
name: SourcePVC
|
|
type: string
|
|
- JSONPath: .spec.source.volumeSnapshotContentName
|
|
description: Name of the VolumeSnapshotContent which represents a pre-provisioned
|
|
snapshot.
|
|
name: SourceSnapshotContent
|
|
type: string
|
|
- JSONPath: .status.restoreSize
|
|
description: Represents the complete size of the snapshot.
|
|
name: RestoreSize
|
|
type: string
|
|
- JSONPath: .spec.volumeSnapshotClassName
|
|
description: The name of the VolumeSnapshotClass requested by the VolumeSnapshot.
|
|
name: SnapshotClass
|
|
type: string
|
|
- JSONPath: .status.boundVolumeSnapshotContentName
|
|
description: The name of the VolumeSnapshotContent to which this VolumeSnapshot
|
|
is bound.
|
|
name: SnapshotContent
|
|
type: string
|
|
- JSONPath: .status.creationTime
|
|
description: Timestamp when the point-in-time snapshot is taken by the underlying
|
|
storage system.
|
|
name: CreationTime
|
|
type: date
|
|
- JSONPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
group: snapshot.storage.k8s.io
|
|
names:
|
|
kind: VolumeSnapshot
|
|
listKind: VolumeSnapshotList
|
|
plural: volumesnapshots
|
|
singular: volumesnapshot
|
|
preserveUnknownFields: false
|
|
scope: Namespaced
|
|
subresources:
|
|
status: {}
|
|
validation:
|
|
openAPIV3Schema:
|
|
description: VolumeSnapshot is a user's request for either creating a point-in-time
|
|
snapshot of a persistent volume, or binding to a pre-existing snapshot.
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
spec:
|
|
description: 'spec defines the desired characteristics of a snapshot requested
|
|
by a user. More info: https://kubernetes.io/docs/concepts/storage/volume-snapshots#volumesnapshots
|
|
Required.'
|
|
properties:
|
|
source:
|
|
description: source specifies where a snapshot will be created from.
|
|
This field is immutable after creation. Required.
|
|
properties:
|
|
persistentVolumeClaimName:
|
|
description: persistentVolumeClaimName specifies the name of the
|
|
PersistentVolumeClaim object in the same namespace as the VolumeSnapshot
|
|
object where the snapshot should be dynamically taken from. This
|
|
field is immutable.
|
|
type: string
|
|
volumeSnapshotContentName:
|
|
description: volumeSnapshotContentName specifies the name of a pre-existing
|
|
VolumeSnapshotContent object. This field is immutable.
|
|
type: string
|
|
type: object
|
|
volumeSnapshotClassName:
|
|
description: 'volumeSnapshotClassName is the name of the VolumeSnapshotClass
|
|
requested by the VolumeSnapshot. If not specified, the default snapshot
|
|
class will be used if one exists. If not specified, and there is no
|
|
default snapshot class, dynamic snapshot creation will fail. Empty
|
|
string is not allowed for this field. TODO(xiangqian): a webhook validation
|
|
on empty string. More info: https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes'
|
|
type: string
|
|
required:
|
|
- source
|
|
type: object
|
|
status:
|
|
description: 'status represents the current information of a snapshot. NOTE:
|
|
status can be modified by sources other than system controllers, and must
|
|
not be depended upon for accuracy. Controllers should only use information
|
|
from the VolumeSnapshotContent object after verifying that the binding
|
|
is accurate and complete.'
|
|
properties:
|
|
boundVolumeSnapshotContentName:
|
|
description: 'boundVolumeSnapshotContentName represents the name of
|
|
the VolumeSnapshotContent object to which the VolumeSnapshot object
|
|
is bound. If not specified, it indicates that the VolumeSnapshot object
|
|
has not been successfully bound to a VolumeSnapshotContent object
|
|
yet. NOTE: Specified boundVolumeSnapshotContentName alone does not
|
|
mean binding is valid. Controllers MUST always verify bidirectional
|
|
binding between VolumeSnapshot and VolumeSnapshotContent to
|
|
avoid possible security issues.'
|
|
type: string
|
|
creationTime:
|
|
description: creationTime is the timestamp when the point-in-time snapshot
|
|
is taken by the underlying storage system. In dynamic snapshot creation
|
|
case, this field will be filled in with the "creation_time" value
|
|
returned from CSI "CreateSnapshotRequest" gRPC call. For a pre-existing
|
|
snapshot, this field will be filled with the "creation_time" value
|
|
returned from the CSI "ListSnapshots" gRPC call if the driver supports
|
|
it. If not specified, it indicates that the creation time of the snapshot
|
|
is unknown.
|
|
format: date-time
|
|
type: string
|
|
error:
|
|
description: error is the last observed error during snapshot creation,
|
|
if any. This field could be helpful to upper level controllers(i.e.,
|
|
application controller) to decide whether they should continue on
|
|
waiting for the snapshot to be created based on the type of error
|
|
reported.
|
|
properties:
|
|
message:
|
|
description: 'message is a string detailing the encountered error
|
|
during snapshot creation if specified. NOTE: message may be logged,
|
|
and it should not contain sensitive information.'
|
|
type: string
|
|
time:
|
|
description: time is the timestamp when the error was encountered.
|
|
format: date-time
|
|
type: string
|
|
type: object
|
|
readyToUse:
|
|
description: readyToUse indicates if a snapshot is ready to be used
|
|
to restore a volume. In dynamic snapshot creation case, this field
|
|
will be filled in with the "ready_to_use" value returned from CSI
|
|
"CreateSnapshotRequest" gRPC call. For a pre-existing snapshot, this
|
|
field will be filled with the "ready_to_use" value returned from the
|
|
CSI "ListSnapshots" gRPC call if the driver supports it, otherwise,
|
|
this field will be set to "True". If not specified, it means the readiness
|
|
of a snapshot is unknown.
|
|
type: boolean
|
|
restoreSize:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
description: restoreSize represents the complete size of the snapshot
|
|
in bytes. In dynamic snapshot creation case, this field will be filled
|
|
in with the "size_bytes" value returned from CSI "CreateSnapshotRequest"
|
|
gRPC call. For a pre-existing snapshot, this field will be filled
|
|
with the "size_bytes" value returned from the CSI "ListSnapshots"
|
|
gRPC call if the driver supports it. When restoring a volume from
|
|
this snapshot, the size of the volume MUST NOT be smaller than the
|
|
restoreSize if it is specified, otherwise the restoration will fail.
|
|
If not specified, it indicates that the size is unknown.
|
|
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
|
|
required:
|
|
- spec
|
|
type: object
|
|
version: v1beta1
|
|
versions:
|
|
- name: v1beta1
|
|
served: true
|
|
storage: true
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|