cue.dev/x/crd/k8s.io/storage@v0.6.0

groupsnapshot/v1/VolumeGroupSnapshotClass.cue raw

 1package v1
 2
 3// VolumeGroupSnapshotClass specifies parameters that a underlying storage system
 4// uses when creating a volume group snapshot. A specific VolumeGroupSnapshotClass
 5// is used by specifying its name in a VolumeGroupSnapshot object.
 6// VolumeGroupSnapshotClasses are non-namespaced.
 7#VolumeGroupSnapshotClass: {
 8	_embeddedResource
 9
10	// APIVersion defines the versioned schema of this representation of an object.
11	// Servers should convert recognized schemas to the latest internal value, and
12	// may reject unrecognized values.
13	// More info:
14	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
15	apiVersion?: string
16
17	// DeletionPolicy determines whether a VolumeGroupSnapshotContent created
18	// through the VolumeGroupSnapshotClass should be deleted when its bound
19	// VolumeGroupSnapshot is deleted.
20	// Supported values are "Retain" and "Delete".
21	// "Retain" means that the VolumeGroupSnapshotContent and its physical group
22	// snapshot on underlying storage system are kept.
23	// "Delete" means that the VolumeGroupSnapshotContent and its physical group
24	// snapshot on underlying storage system are deleted.
25	// Required.
26	deletionPolicy!: "Delete" | "Retain"
27
28	// Driver is the name of the storage driver expected to handle this VolumeGroupSnapshotClass.
29	// Required.
30	driver!: string
31
32	// Kind is a string value representing the REST resource this object represents.
33	// Servers may infer this from the endpoint the client submits requests to.
34	// Cannot be updated.
35	// In CamelCase.
36	// More info:
37	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
38	kind?:     string
39	metadata?: {}
40
41	// Parameters is a key-value map with storage driver specific parameters for
42	// creating group snapshots.
43	// These values are opaque to Kubernetes and are passed directly to the driver.
44	parameters?: [string]: string
45
46	_embeddedResource: {
47		apiVersion!: string
48		kind!:       string
49		metadata?:   {...}
50	}
51	apiVersion: "groupsnapshot.storage.k8s.io/v1"
52	kind:       "VolumeGroupSnapshotClass"
53	metadata!: {
54		name!:      string
55		namespace?: string
56		labels?: [string]:      string
57		annotations?: [string]: string
58		...
59	}
60}