Repository navigation
ateapi: add mount_options to ExternalVolumeClass and forward to CSI MountFlags - #3776
Open
Vu Le (lekhoavu2909) wants to merge 17 commits into
Open
Vu Le (lekhoavu2909) wants to merge 17 commits into
Vu Le (lekhoavu2909) wants to merge 17 commits into
Conversation
regenerate ateapi.go, and register ExternalVolumeClass in apitool TestBuild_Annotations. Signed-off-by: Vu Le <vulk@google.com>
controlapi.ServiceImpl store pass-throughs Signed-off-by: Vu Le <vulk@google.com>
table truncation and driver_name column test Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
apitool example Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Vu Le (lekhoavu2909)
force-pushed
the
evc-pr5b-mount-options
branch
from
November 10, 2026 22:45
2c992b6 to
375d7e7
Compare
| // +k8s:listType=atomic | ||
| // +k8s:eachVal=+k8s:minLength=1 | ||
| // +k8s:eachVal=+k8s:maxLength=256 | ||
| repeated string mount_options = 5; |
Collaborator
Author
| VolumeType: sc.Provisioner, | ||
| VolumeType: class.driver, | ||
| VolumeContext: resp.VolumeContext, | ||
| MountOptions: class.mountOptions, |
Collaborator
Author
There was a problem hiding this comment.
createActorVolumes constructs a fresh ExternalVolumeStatus when recording StorageVolumeId and VolumeContext. Omitting MountOptions here would drop what initialExternalVolumes set on CreateActor.
Collaborator
Author
There was a problem hiding this comment.
Matches Kubernetes CSI behavior (and csi-driver-nfs, which reads mountFlags in NodePublishVolume) without widening volume.CreateVolumeRequest or AttachVolumeRequest. If a future CSI driver requires MountFlags on CreateVolume or ControllerPublishVolume, those request structs can carry MountOptions then.
1 of 2 tasks
Vu Le (lekhoavu2909)
marked this pull request as ready for review
November 11, 2026 00:15
41 tasks
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds mount_options to ExternalVolumeClass and passes them to the CSI driver as VolumeCapability.Mount.MountFlags, so drivers that need mount flags (e.g. nfsvers=4.1) work. Templates that use storage_class_name now also get the StorageClass's mountOptions, which were previously ignored. Stacked on #3774; code-wise it depends only on #3752.
Part of #3754
AI use: AI-assisted, I reviewed and tested it.
no new API requirement, but StorageClass mountOptions are now honored where they were ignored before. Volumes already provisioned are unaffected.