cue.dev/x/k8s.io@v0.7.0

api/storage/v1beta1/schema.cue raw

 1package v1beta1
 2
 3import "cue.dev/x/k8s.io/apimachinery/pkg/apis/meta/v1"
 4
 5// VolumeAttributesClass represents a specification of mutable
 6// volume attributes defined by the CSI driver. The class can be
 7// specified during dynamic provisioning of
 8// PersistentVolumeClaims, and changed in the
 9// PersistentVolumeClaim spec after provisioning.
10#VolumeAttributesClass: {
11	// APIVersion defines the versioned schema of this representation
12	// of an object. Servers should convert recognized schemas to the
13	// latest internal value, and may reject unrecognized values.
14	// More info:
15	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
16	"apiVersion": "storage.k8s.io/v1beta1"
17
18	// Name of the CSI driver This field is immutable.
19	"driverName"!: string
20
21	// Kind is a string value representing the REST resource this
22	// object represents. Servers may infer this from the endpoint
23	// the client submits requests to. Cannot be updated. In
24	// CamelCase. More info:
25	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
26	"kind": "VolumeAttributesClass"
27
28	// Standard object's metadata. More info:
29	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
30	"metadata"?: v1.#ObjectMeta
31
32	// parameters hold volume attributes defined by the CSI driver.
33	// These values are opaque to the Kubernetes and are passed
34	// directly to the CSI driver. The underlying storage provider
35	// supports changing these attributes on an existing volume,
36	// however the parameters field itself is immutable. To invoke a
37	// volume update, a new VolumeAttributesClass should be created
38	// with new parameters, and the PersistentVolumeClaim should be
39	// updated to reference the new VolumeAttributesClass.
40	//
41	// This field is required and must contain at least one key/value
42	// pair. The keys cannot be empty, and the maximum number of
43	// parameters is 512, with a cumulative max size of 256K. If the
44	// CSI driver rejects invalid parameters, the target
45	// PersistentVolumeClaim will be set to an "Infeasible" state in
46	// the modifyVolumeStatus field.
47	"parameters"?: {
48		[string]: string
49	}
50}
51
52// VolumeAttributesClassList is a collection of
53// VolumeAttributesClass objects.
54#VolumeAttributesClassList: {
55	// APIVersion defines the versioned schema of this representation
56	// of an object. Servers should convert recognized schemas to the
57	// latest internal value, and may reject unrecognized values.
58	// More info:
59	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
60	"apiVersion": "storage.k8s.io/v1beta1"
61
62	// items is the list of VolumeAttributesClass objects.
63	"items"!: [...#VolumeAttributesClass]
64
65	// Kind is a string value representing the REST resource this
66	// object represents. Servers may infer this from the endpoint
67	// the client submits requests to. Cannot be updated. In
68	// CamelCase. More info:
69	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
70	"kind": "VolumeAttributesClassList"
71
72	// Standard list metadata More info:
73	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
74	"metadata"?: v1.#ListMeta
75}