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