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

groupsnapshot/v1beta2/VolumeGroupSnapshotClass.cue raw

 1package v1beta2
 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/v1beta2"
52	kind:       "VolumeGroupSnapshotClass"
53	metadata!: {
54		"name"!:        string
55		"namespace"?:   string
56		"labels"?:      {[string]: string}
57		"annotations"?: {[string]: string}
58		...
59	}
60}