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