github.com/kubernetes-csi/external-snapshotter/client/v4@v4.2.0/config/crd/snapshot.storage.k8s.io_volumesnapshotcontents.yaml (about) 1 2 --- 3 apiVersion: apiextensions.k8s.io/v1 4 kind: CustomResourceDefinition 5 metadata: 6 annotations: 7 controller-gen.kubebuilder.io/version: v0.4.0 8 api-approved.kubernetes.io: "https://github.com/kubernetes-csi/external-snapshotter/pull/419" 9 creationTimestamp: null 10 name: volumesnapshotcontents.snapshot.storage.k8s.io 11 spec: 12 group: snapshot.storage.k8s.io 13 names: 14 kind: VolumeSnapshotContent 15 listKind: VolumeSnapshotContentList 16 plural: volumesnapshotcontents 17 singular: volumesnapshotcontent 18 scope: Cluster 19 versions: 20 - additionalPrinterColumns: 21 - description: Indicates if the snapshot is ready to be used to restore a volume. 22 jsonPath: .status.readyToUse 23 name: ReadyToUse 24 type: boolean 25 - description: Represents the complete size of the snapshot in bytes 26 jsonPath: .status.restoreSize 27 name: RestoreSize 28 type: integer 29 - description: Determines whether this VolumeSnapshotContent and its physical snapshot on the underlying storage system should be deleted when its bound VolumeSnapshot is deleted. 30 jsonPath: .spec.deletionPolicy 31 name: DeletionPolicy 32 type: string 33 - description: Name of the CSI driver used to create the physical snapshot on the underlying storage system. 34 jsonPath: .spec.driver 35 name: Driver 36 type: string 37 - description: Name of the VolumeSnapshotClass to which this snapshot belongs. 38 jsonPath: .spec.volumeSnapshotClassName 39 name: VolumeSnapshotClass 40 type: string 41 - description: Name of the VolumeSnapshot object to which this VolumeSnapshotContent object is bound. 42 jsonPath: .spec.volumeSnapshotRef.name 43 name: VolumeSnapshot 44 type: string 45 - description: Namespace of the VolumeSnapshot object to which this VolumeSnapshotContent object is bound. 46 jsonPath: .spec.volumeSnapshotRef.namespace 47 name: VolumeSnapshotNamespace 48 type: string 49 - jsonPath: .metadata.creationTimestamp 50 name: Age 51 type: date 52 name: v1 53 schema: 54 openAPIV3Schema: 55 description: VolumeSnapshotContent represents the actual "on-disk" snapshot object in the underlying storage system 56 properties: 57 apiVersion: 58 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' 59 type: string 60 kind: 61 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' 62 type: string 63 spec: 64 description: spec defines properties of a VolumeSnapshotContent created by the underlying storage system. Required. 65 properties: 66 deletionPolicy: 67 description: deletionPolicy determines whether this VolumeSnapshotContent and its physical snapshot on the underlying storage system should be deleted when its bound VolumeSnapshot is deleted. Supported values are "Retain" and "Delete". "Retain" means that the VolumeSnapshotContent and its physical snapshot on underlying storage system are kept. "Delete" means that the VolumeSnapshotContent and its physical snapshot on underlying storage system are deleted. For dynamically provisioned snapshots, this field will automatically be filled in by the CSI snapshotter sidecar with the "DeletionPolicy" field defined in the corresponding VolumeSnapshotClass. For pre-existing snapshots, users MUST specify this field when creating the VolumeSnapshotContent object. Required. 68 enum: 69 - Delete 70 - Retain 71 type: string 72 driver: 73 description: driver is the name of the CSI driver used to create the physical snapshot on the underlying storage system. This MUST be the same as the name returned by the CSI GetPluginName() call for that driver. Required. 74 type: string 75 source: 76 description: source specifies whether the snapshot is (or should be) dynamically provisioned or already exists, and just requires a Kubernetes object representation. This field is immutable after creation. Required. 77 properties: 78 snapshotHandle: 79 description: snapshotHandle specifies the CSI "snapshot_id" of a pre-existing snapshot on the underlying storage system for which a Kubernetes object representation was (or should be) created. This field is immutable. 80 type: string 81 volumeHandle: 82 description: volumeHandle specifies the CSI "volume_id" of the volume from which a snapshot should be dynamically taken from. This field is immutable. 83 type: string 84 type: object 85 oneOf: 86 - required: ["snapshotHandle"] 87 - required: ["volumeHandle"] 88 volumeSnapshotClassName: 89 description: name of the VolumeSnapshotClass from which this snapshot was (or will be) created. Note that after provisioning, the VolumeSnapshotClass may be deleted or recreated with different set of values, and as such, should not be referenced post-snapshot creation. 90 type: string 91 volumeSnapshotRef: 92 description: volumeSnapshotRef specifies the VolumeSnapshot object to which this VolumeSnapshotContent object is bound. VolumeSnapshot.Spec.VolumeSnapshotContentName field must reference to this VolumeSnapshotContent's name for the bidirectional binding to be valid. For a pre-existing VolumeSnapshotContent object, name and namespace of the VolumeSnapshot object MUST be provided for binding to happen. This field is immutable after creation. Required. 93 properties: 94 apiVersion: 95 description: API version of the referent. 96 type: string 97 fieldPath: 98 description: 'If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.' 99 type: string 100 kind: 101 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 102 type: string 103 name: 104 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' 105 type: string 106 namespace: 107 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' 108 type: string 109 resourceVersion: 110 description: 'Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' 111 type: string 112 uid: 113 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' 114 type: string 115 type: object 116 required: 117 - deletionPolicy 118 - driver 119 - source 120 - volumeSnapshotRef 121 type: object 122 status: 123 description: status represents the current information of a snapshot. 124 properties: 125 creationTime: 126 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 by the CSI snapshotter sidecar with the "creation_time" value returned from CSI "CreateSnapshot" 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 the creation time is unknown. The format of this field is a Unix nanoseconds time encoded as an int64. On Unix, the command `date +%s%N` returns the current time in nanoseconds since 1970-01-01 00:00:00 UTC. 127 format: int64 128 type: integer 129 error: 130 description: error is the last observed error during snapshot creation, if any. Upon success after retry, this error field will be cleared. 131 properties: 132 message: 133 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.' 134 type: string 135 time: 136 description: time is the timestamp when the error was encountered. 137 format: date-time 138 type: string 139 type: object 140 readyToUse: 141 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 by the CSI snapshotter sidecar with the "ready_to_use" value returned from CSI "CreateSnapshot" 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. 142 type: boolean 143 restoreSize: 144 description: restoreSize represents the complete size of the snapshot in bytes. In dynamic snapshot creation case, this field will be filled in by the CSI snapshotter sidecar with the "size_bytes" value returned from CSI "CreateSnapshot" 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. 145 format: int64 146 minimum: 0 147 type: integer 148 snapshotHandle: 149 description: snapshotHandle is the CSI "snapshot_id" of a snapshot on the underlying storage system. If not specified, it indicates that dynamic snapshot creation has either failed or it is still in progress. 150 type: string 151 type: object 152 required: 153 - spec 154 type: object 155 served: true 156 storage: true 157 subresources: 158 status: {} 159 - additionalPrinterColumns: 160 - description: Indicates if the snapshot is ready to be used to restore a volume. 161 jsonPath: .status.readyToUse 162 name: ReadyToUse 163 type: boolean 164 - description: Represents the complete size of the snapshot in bytes 165 jsonPath: .status.restoreSize 166 name: RestoreSize 167 type: integer 168 - description: Determines whether this VolumeSnapshotContent and its physical snapshot on the underlying storage system should be deleted when its bound VolumeSnapshot is deleted. 169 jsonPath: .spec.deletionPolicy 170 name: DeletionPolicy 171 type: string 172 - description: Name of the CSI driver used to create the physical snapshot on the underlying storage system. 173 jsonPath: .spec.driver 174 name: Driver 175 type: string 176 - description: Name of the VolumeSnapshotClass to which this snapshot belongs. 177 jsonPath: .spec.volumeSnapshotClassName 178 name: VolumeSnapshotClass 179 type: string 180 - description: Name of the VolumeSnapshot object to which this VolumeSnapshotContent object is bound. 181 jsonPath: .spec.volumeSnapshotRef.name 182 name: VolumeSnapshot 183 type: string 184 - description: Namespace of the VolumeSnapshot object to which this VolumeSnapshotContent object is bound. 185 jsonPath: .spec.volumeSnapshotRef.namespace 186 name: VolumeSnapshotNamespace 187 type: string 188 - jsonPath: .metadata.creationTimestamp 189 name: Age 190 type: date 191 name: v1beta1 192 # This indicates the v1beta1 version of the custom resource is deprecated. 193 # API requests to this version receive a warning in the server response. 194 deprecated: true 195 # This overrides the default warning returned to clients making v1beta1 API requests. 196 deprecationWarning: "snapshot.storage.k8s.io/v1beta1 VolumeSnapshotContent is deprecated; use snapshot.storage.k8s.io/v1 VolumeSnapshotContent" 197 schema: 198 openAPIV3Schema: 199 description: VolumeSnapshotContent represents the actual "on-disk" snapshot object in the underlying storage system 200 properties: 201 apiVersion: 202 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' 203 type: string 204 kind: 205 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' 206 type: string 207 spec: 208 description: spec defines properties of a VolumeSnapshotContent created by the underlying storage system. Required. 209 properties: 210 deletionPolicy: 211 description: deletionPolicy determines whether this VolumeSnapshotContent and its physical snapshot on the underlying storage system should be deleted when its bound VolumeSnapshot is deleted. Supported values are "Retain" and "Delete". "Retain" means that the VolumeSnapshotContent and its physical snapshot on underlying storage system are kept. "Delete" means that the VolumeSnapshotContent and its physical snapshot on underlying storage system are deleted. For dynamically provisioned snapshots, this field will automatically be filled in by the CSI snapshotter sidecar with the "DeletionPolicy" field defined in the corresponding VolumeSnapshotClass. For pre-existing snapshots, users MUST specify this field when creating the VolumeSnapshotContent object. Required. 212 enum: 213 - Delete 214 - Retain 215 type: string 216 driver: 217 description: driver is the name of the CSI driver used to create the physical snapshot on the underlying storage system. This MUST be the same as the name returned by the CSI GetPluginName() call for that driver. Required. 218 type: string 219 source: 220 description: source specifies whether the snapshot is (or should be) dynamically provisioned or already exists, and just requires a Kubernetes object representation. This field is immutable after creation. Required. 221 properties: 222 snapshotHandle: 223 description: snapshotHandle specifies the CSI "snapshot_id" of a pre-existing snapshot on the underlying storage system for which a Kubernetes object representation was (or should be) created. This field is immutable. 224 type: string 225 volumeHandle: 226 description: volumeHandle specifies the CSI "volume_id" of the volume from which a snapshot should be dynamically taken from. This field is immutable. 227 type: string 228 type: object 229 volumeSnapshotClassName: 230 description: name of the VolumeSnapshotClass from which this snapshot was (or will be) created. Note that after provisioning, the VolumeSnapshotClass may be deleted or recreated with different set of values, and as such, should not be referenced post-snapshot creation. 231 type: string 232 volumeSnapshotRef: 233 description: volumeSnapshotRef specifies the VolumeSnapshot object to which this VolumeSnapshotContent object is bound. VolumeSnapshot.Spec.VolumeSnapshotContentName field must reference to this VolumeSnapshotContent's name for the bidirectional binding to be valid. For a pre-existing VolumeSnapshotContent object, name and namespace of the VolumeSnapshot object MUST be provided for binding to happen. This field is immutable after creation. Required. 234 properties: 235 apiVersion: 236 description: API version of the referent. 237 type: string 238 fieldPath: 239 description: 'If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.' 240 type: string 241 kind: 242 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 243 type: string 244 name: 245 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' 246 type: string 247 namespace: 248 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' 249 type: string 250 resourceVersion: 251 description: 'Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' 252 type: string 253 uid: 254 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' 255 type: string 256 type: object 257 required: 258 - deletionPolicy 259 - driver 260 - source 261 - volumeSnapshotRef 262 type: object 263 status: 264 description: status represents the current information of a snapshot. 265 properties: 266 creationTime: 267 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 by the CSI snapshotter sidecar with the "creation_time" value returned from CSI "CreateSnapshot" 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 the creation time is unknown. The format of this field is a Unix nanoseconds time encoded as an int64. On Unix, the command `date +%s%N` returns the current time in nanoseconds since 1970-01-01 00:00:00 UTC. 268 format: int64 269 type: integer 270 error: 271 description: error is the last observed error during snapshot creation, if any. Upon success after retry, this error field will be cleared. 272 properties: 273 message: 274 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.' 275 type: string 276 time: 277 description: time is the timestamp when the error was encountered. 278 format: date-time 279 type: string 280 type: object 281 readyToUse: 282 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 by the CSI snapshotter sidecar with the "ready_to_use" value returned from CSI "CreateSnapshot" 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. 283 type: boolean 284 restoreSize: 285 description: restoreSize represents the complete size of the snapshot in bytes. In dynamic snapshot creation case, this field will be filled in by the CSI snapshotter sidecar with the "size_bytes" value returned from CSI "CreateSnapshot" 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. 286 format: int64 287 minimum: 0 288 type: integer 289 snapshotHandle: 290 description: snapshotHandle is the CSI "snapshot_id" of a snapshot on the underlying storage system. If not specified, it indicates that dynamic snapshot creation has either failed or it is still in progress. 291 type: string 292 type: object 293 required: 294 - spec 295 type: object 296 served: true 297 storage: false 298 subresources: 299 status: {} 300 status: 301 acceptedNames: 302 kind: "" 303 plural: "" 304 conditions: [] 305 storedVersions: []