updated vendor

This commit is contained in:
2026-06-16 08:02:19 +02:00
parent 2f7f99d3f0
commit 77299d0c64
1283 changed files with 67302 additions and 208958 deletions
+35
View File
@@ -187,6 +187,16 @@ func (m *CSIDriverSpec) MarshalToSizedBuffer(dAtA []byte) (int, error) {
_ = i
var l int
_ = l
if m.PreventPodSchedulingIfMissing != nil {
i--
if *m.PreventPodSchedulingIfMissing {
dAtA[i] = 1
} else {
dAtA[i] = 0
}
i--
dAtA[i] = 0x58
}
if m.ServiceAccountTokenInSecrets != nil {
i--
if *m.ServiceAccountTokenInSecrets {
@@ -1304,6 +1314,9 @@ func (m *CSIDriverSpec) Size() (n int) {
if m.ServiceAccountTokenInSecrets != nil {
n += 2
}
if m.PreventPodSchedulingIfMissing != nil {
n += 2
}
return n
}
@@ -1701,6 +1714,7 @@ func (this *CSIDriverSpec) String() string {
`SELinuxMount:` + valueToStringGenerated(this.SELinuxMount) + `,`,
`NodeAllocatableUpdatePeriodSeconds:` + valueToStringGenerated(this.NodeAllocatableUpdatePeriodSeconds) + `,`,
`ServiceAccountTokenInSecrets:` + valueToStringGenerated(this.ServiceAccountTokenInSecrets) + `,`,
`PreventPodSchedulingIfMissing:` + valueToStringGenerated(this.PreventPodSchedulingIfMissing) + `,`,
`}`,
}, "")
return s
@@ -2498,6 +2512,27 @@ func (m *CSIDriverSpec) Unmarshal(dAtA []byte) error {
}
b := bool(v != 0)
m.ServiceAccountTokenInSecrets = &b
case 11:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field PreventPodSchedulingIfMissing", wireType)
}
var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
v |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
b := bool(v != 0)
m.PreventPodSchedulingIfMissing = &b
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
+37 -3
View File
@@ -218,7 +218,7 @@ message CSIDriverSpec {
// occur (neither periodic nor upon detecting capacity-related failures), and the
// allocatable.count remains static. The minimum allowed value for this field is 10 seconds.
//
// This is a beta feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.
// This feature requires the MutableCSINodeAllocatableCount feature gate to be enabled.
//
// This field is mutable.
//
@@ -249,6 +249,27 @@ message CSIDriverSpec {
// +featureGate=CSIServiceAccountTokenSecrets
// +optional
optional bool serviceAccountTokenInSecrets = 10;
// PreventPodSchedulingIfMissing indicates that the CSI driver wants to prevent pod
// scheduling if the CSI driver on the node is missing.
//
// Enabling this option will prevent the scheduler (or any other
// component which embeds default scheduler such as cluster-autoscaler) from
// scheduling pods to nodes where CSI driver is not installed.
//
// For components(such as cluster-autoscaler) that embed the scheduler and run
// pod placement simulations using scheduler plugins, they MUST be aware of
// CSI driver registration information via CSINode object. They must create simulated
// CSINode objects in addition to Node objects during scheduling simulation, otherwise
// if PreventPodSchedulingIfMissing is enabled globally for CSIDriver object, any
// newly created node may be rejected by the scheduler because of missing CSI driver
// information from the node.
//
// This is an alpha feature and requires the VolumeLimitScaling feature gate to be enabled.
// Default is "false".
// +featureGate=VolumeLimitScaling
// +optional
optional bool preventPodSchedulingIfMissing = 11;
}
// CSINode holds information about all CSI drivers installed on a node.
@@ -434,17 +455,22 @@ message StorageClass {
// provisioner indicates the type of the provisioner.
// +required
// +k8s:required
// +k8s:alpha(since: "1.36")=+k8s:required
// +k8s:alpha(since: "1.36")=+k8s:immutable
optional string provisioner = 2;
// parameters holds the parameters for the provisioner that should
// create volumes of this storage class.
// +optional
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +k8s:alpha(since: "1.36")=+k8s:optional
map<string, string> parameters = 3;
// reclaimPolicy controls the reclaimPolicy for dynamically provisioned PersistentVolumes of this storage class.
// Defaults to Delete.
// +optional
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +k8s:alpha(since: "1.36")=+k8s:optional
optional string reclaimPolicy = 4;
// mountOptions controls the mountOptions for dynamically provisioned PersistentVolumes of this storage class.
@@ -462,6 +488,8 @@ message StorageClass {
// provisioned and bound. When unset, VolumeBindingImmediate is used.
// This field is only honored by servers that enable the VolumeScheduling feature.
// +optional
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +k8s:alpha(since: "1.36")=+k8s:optional
optional string volumeBindingMode = 7;
// allowedTopologies restrict the node topologies where volumes can be dynamically provisioned.
@@ -509,6 +537,8 @@ message VolumeAttachment {
// spec represents specification of the desired attach/detach volume behavior.
// Populated by the Kubernetes system.
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +required
optional VolumeAttachmentSpec spec = 2;
// status represents status of the VolumeAttachment request.
@@ -552,6 +582,10 @@ message VolumeAttachmentSource {
message VolumeAttachmentSpec {
// attacher indicates the name of the volume driver that MUST handle this
// request. This is the name returned by GetPluginName().
// +required
// +k8s:alpha(since: "1.36")=+k8s:required
// +k8s:alpha(since: "1.36")=+k8s:format="k8s-long-name-caseless"
// +k8s:alpha(since: "1.36")=+k8s:maxLength=63
optional string attacher = 1;
// source represents the volume that should be attached.
@@ -643,7 +677,7 @@ message VolumeError {
// errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.
//
// This is an optional, beta field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.
// This field requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.
//
// +featureGate=MutableCSINodeAllocatableCount
// +optional
-64
View File
@@ -1,64 +0,0 @@
//go:build kubernetes_protomessage_one_more_release
// +build kubernetes_protomessage_one_more_release
/*
Copyright The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
// Code generated by go-to-protobuf. DO NOT EDIT.
package v1
func (*CSIDriver) ProtoMessage() {}
func (*CSIDriverList) ProtoMessage() {}
func (*CSIDriverSpec) ProtoMessage() {}
func (*CSINode) ProtoMessage() {}
func (*CSINodeDriver) ProtoMessage() {}
func (*CSINodeList) ProtoMessage() {}
func (*CSINodeSpec) ProtoMessage() {}
func (*CSIStorageCapacity) ProtoMessage() {}
func (*CSIStorageCapacityList) ProtoMessage() {}
func (*StorageClass) ProtoMessage() {}
func (*StorageClassList) ProtoMessage() {}
func (*TokenRequest) ProtoMessage() {}
func (*VolumeAttachment) ProtoMessage() {}
func (*VolumeAttachmentList) ProtoMessage() {}
func (*VolumeAttachmentSource) ProtoMessage() {}
func (*VolumeAttachmentSpec) ProtoMessage() {}
func (*VolumeAttachmentStatus) ProtoMessage() {}
func (*VolumeAttributesClass) ProtoMessage() {}
func (*VolumeAttributesClassList) ProtoMessage() {}
func (*VolumeError) ProtoMessage() {}
func (*VolumeNodeResources) ProtoMessage() {}
+38 -3
View File
@@ -42,17 +42,22 @@ type StorageClass struct {
// provisioner indicates the type of the provisioner.
// +required
// +k8s:required
// +k8s:alpha(since: "1.36")=+k8s:required
// +k8s:alpha(since: "1.36")=+k8s:immutable
Provisioner string `json:"provisioner" protobuf:"bytes,2,opt,name=provisioner"`
// parameters holds the parameters for the provisioner that should
// create volumes of this storage class.
// +optional
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +k8s:alpha(since: "1.36")=+k8s:optional
Parameters map[string]string `json:"parameters,omitempty" protobuf:"bytes,3,rep,name=parameters"`
// reclaimPolicy controls the reclaimPolicy for dynamically provisioned PersistentVolumes of this storage class.
// Defaults to Delete.
// +optional
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +k8s:alpha(since: "1.36")=+k8s:optional
ReclaimPolicy *v1.PersistentVolumeReclaimPolicy `json:"reclaimPolicy,omitempty" protobuf:"bytes,4,opt,name=reclaimPolicy,casttype=k8s.io/api/core/v1.PersistentVolumeReclaimPolicy"`
// mountOptions controls the mountOptions for dynamically provisioned PersistentVolumes of this storage class.
@@ -70,6 +75,8 @@ type StorageClass struct {
// provisioned and bound. When unset, VolumeBindingImmediate is used.
// This field is only honored by servers that enable the VolumeScheduling feature.
// +optional
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +k8s:alpha(since: "1.36")=+k8s:optional
VolumeBindingMode *VolumeBindingMode `json:"volumeBindingMode,omitempty" protobuf:"bytes,7,opt,name=volumeBindingMode"`
// allowedTopologies restrict the node topologies where volumes can be dynamically provisioned.
@@ -117,6 +124,7 @@ const (
// +genclient:nonNamespaced
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// +k8s:prerelease-lifecycle-gen:introduced=1.13
// +k8s:supportsSubresource="/status"
// VolumeAttachment captures the intent to attach or detach the specified volume
// to/from the specified node.
@@ -132,6 +140,8 @@ type VolumeAttachment struct {
// spec represents specification of the desired attach/detach volume behavior.
// Populated by the Kubernetes system.
// +k8s:alpha(since: "1.36")=+k8s:immutable
// +required
Spec VolumeAttachmentSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"`
// status represents status of the VolumeAttachment request.
@@ -161,6 +171,10 @@ type VolumeAttachmentList struct {
type VolumeAttachmentSpec struct {
// attacher indicates the name of the volume driver that MUST handle this
// request. This is the name returned by GetPluginName().
// +required
// +k8s:alpha(since: "1.36")=+k8s:required
// +k8s:alpha(since: "1.36")=+k8s:format="k8s-long-name-caseless"
// +k8s:alpha(since: "1.36")=+k8s:maxLength=63
Attacher string `json:"attacher" protobuf:"bytes,1,opt,name=attacher"`
// source represents the volume that should be attached.
@@ -231,7 +245,7 @@ type VolumeError struct {
// errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.
//
// This is an optional, beta field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.
// This field requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.
//
// +featureGate=MutableCSINodeAllocatableCount
// +optional
@@ -438,7 +452,7 @@ type CSIDriverSpec struct {
// occur (neither periodic nor upon detecting capacity-related failures), and the
// allocatable.count remains static. The minimum allowed value for this field is 10 seconds.
//
// This is a beta feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.
// This feature requires the MutableCSINodeAllocatableCount feature gate to be enabled.
//
// This field is mutable.
//
@@ -469,6 +483,27 @@ type CSIDriverSpec struct {
// +featureGate=CSIServiceAccountTokenSecrets
// +optional
ServiceAccountTokenInSecrets *bool `json:"serviceAccountTokenInSecrets,omitempty" protobuf:"varint,10,opt,name=serviceAccountTokenInSecrets"`
// PreventPodSchedulingIfMissing indicates that the CSI driver wants to prevent pod
// scheduling if the CSI driver on the node is missing.
//
// Enabling this option will prevent the scheduler (or any other
// component which embeds default scheduler such as cluster-autoscaler) from
// scheduling pods to nodes where CSI driver is not installed.
//
// For components(such as cluster-autoscaler) that embed the scheduler and run
// pod placement simulations using scheduler plugins, they MUST be aware of
// CSI driver registration information via CSINode object. They must create simulated
// CSINode objects in addition to Node objects during scheduling simulation, otherwise
// if PreventPodSchedulingIfMissing is enabled globally for CSIDriver object, any
// newly created node may be rejected by the scheduler because of missing CSI driver
// information from the node.
//
// This is an alpha feature and requires the VolumeLimitScaling feature gate to be enabled.
// Default is "false".
// +featureGate=VolumeLimitScaling
// +optional
PreventPodSchedulingIfMissing *bool `json:"preventPodSchedulingIfMissing,omitempty" protobuf:"varint,11,opt,name=preventPodSchedulingIfMissing"`
}
// FSGroupPolicy specifies if a CSI Driver supports modifying
+3 -2
View File
@@ -57,8 +57,9 @@ var map_CSIDriverSpec = map[string]string{
"tokenRequests": "tokenRequests indicates the CSI driver needs pods' service account tokens it is mounting volume for to do necessary authentication. Kubelet will pass the tokens in VolumeContext in the CSI NodePublishVolume calls. The CSI driver should parse and validate the following VolumeContext: \"csi.storage.k8s.io/serviceAccount.tokens\": {\n \"<audience>\": {\n \"token\": <token>,\n \"expirationTimestamp\": <expiration timestamp in RFC3339>,\n },\n ...\n}\n\nNote: Audience in each TokenRequest should be different and at most one token is empty string. To receive a new token after expiry, RequiresRepublish can be used to trigger NodePublishVolume periodically.",
"requiresRepublish": "requiresRepublish indicates the CSI driver wants `NodePublishVolume` being periodically called to reflect any possible change in the mounted volume. This field defaults to false.\n\nNote: After a successful initial NodePublishVolume call, subsequent calls to NodePublishVolume should only update the contents of the volume. New mount points will not be seen by a running container.",
"seLinuxMount": "seLinuxMount specifies if the CSI driver supports \"-o context\" mount option.\n\nWhen \"true\", the CSI driver must ensure that all volumes provided by this CSI driver can be mounted separately with different `-o context` options. This is typical for storage backends that provide volumes as filesystems on block devices or as independent shared volumes. Kubernetes will call NodeStage / NodePublish with \"-o context=xyz\" mount option when mounting a ReadWriteOncePod volume used in Pod that has explicitly set SELinux context. In the future, it may be expanded to other volume AccessModes. In any case, Kubernetes will ensure that the volume is mounted only with a single SELinux context.\n\nWhen \"false\", Kubernetes won't pass any special SELinux mount options to the driver. This is typical for volumes that represent subdirectories of a bigger shared filesystem.\n\nDefault is \"false\".",
"nodeAllocatableUpdatePeriodSeconds": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is a beta feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
"nodeAllocatableUpdatePeriodSeconds": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis feature requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
"serviceAccountTokenInSecrets": "serviceAccountTokenInSecrets is an opt-in for CSI drivers to indicate that service account tokens should be passed via the Secrets field in NodePublishVolumeRequest instead of the VolumeContext field. The CSI specification provides a dedicated Secrets field for sensitive information like tokens, which is the appropriate mechanism for handling credentials. This addresses security concerns where sensitive tokens were being logged as part of volume context.\n\nWhen \"true\", kubelet will pass the tokens only in the Secrets field with the key \"csi.storage.k8s.io/serviceAccount.tokens\". The CSI driver must be updated to read tokens from the Secrets field instead of VolumeContext.\n\nWhen \"false\" or not set, kubelet will pass the tokens in VolumeContext with the key \"csi.storage.k8s.io/serviceAccount.tokens\" (existing behavior). This maintains backward compatibility with existing CSI drivers.\n\nThis field can only be set when TokenRequests is configured. The API server will reject CSIDriver specs that set this field without TokenRequests.\n\nDefault behavior if unset is to pass tokens in the VolumeContext field.",
"preventPodSchedulingIfMissing": "PreventPodSchedulingIfMissing indicates that the CSI driver wants to prevent pod scheduling if the CSI driver on the node is missing.\n\nEnabling this option will prevent the scheduler (or any other component which embeds default scheduler such as cluster-autoscaler) from scheduling pods to nodes where CSI driver is not installed.\n\nFor components(such as cluster-autoscaler) that embed the scheduler and run pod placement simulations using scheduler plugins, they MUST be aware of CSI driver registration information via CSINode object. They must create simulated CSINode objects in addition to Node objects during scheduling simulation, otherwise if PreventPodSchedulingIfMissing is enabled globally for CSIDriver object, any newly created node may be rejected by the scheduler because of missing CSI driver information from the node.\n\nThis is an alpha feature and requires the VolumeLimitScaling feature gate to be enabled. Default is \"false\".",
}
func (CSIDriverSpec) SwaggerDoc() map[string]string {
@@ -243,7 +244,7 @@ var map_VolumeError = map[string]string{
"": "VolumeError captures an error encountered during a volume operation.",
"time": "time represents the time the error was encountered.",
"message": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
"errorCode": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, beta field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
"errorCode": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis field requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
}
func (VolumeError) SwaggerDoc() map[string]string {
+5
View File
@@ -142,6 +142,11 @@ func (in *CSIDriverSpec) DeepCopyInto(out *CSIDriverSpec) {
*out = new(bool)
**out = **in
}
if in.PreventPodSchedulingIfMissing != nil {
in, out := &in.PreventPodSchedulingIfMissing, &out.PreventPodSchedulingIfMissing
*out = new(bool)
**out = **in
}
return
}