Merge pull request #50919 from wongma7/mount-options
Automatic merge from submit-queue (batch tested with PRs 50919, 51410, 50099, 51300, 50296) Take mount options to GA by adding PV.spec.mountOptions **What this PR does / why we need it**: Implements https://github.com/kubernetes/community/pull/771 issue: https://github.com/kubernetes/features/issues/168 **Special notes for your reviewer**: TODO: - ~StorageClass mountOptions~ As described in proposal, this adds PV.spec.mountOptions + mountOptions parameter to every plugin that is both provisionable & supports mount options. (personally, even having done all the work already, i don't agree w/ the proposal that mountOptions should be SC parameter but... :)) **Release note**: ```release-note Add mount options field to PersistentVolume spec ```
This commit is contained in:
@@ -455,6 +455,10 @@ type PersistentVolumeSpec struct {
|
||||
// means that this volume does not belong to any StorageClass.
|
||||
// +optional
|
||||
StorageClassName string
|
||||
// A list of mount options, e.g. ["ro", "soft"]. Not validated - mount will
|
||||
// simply fail if one is invalid.
|
||||
// +optional
|
||||
MountOptions []string
|
||||
}
|
||||
|
||||
// PersistentVolumeReclaimPolicy describes a policy for end-of-life maintenance of persistent volumes
|
||||
|
||||
@@ -3152,6 +3152,7 @@ func autoConvert_v1_PersistentVolumeSpec_To_api_PersistentVolumeSpec(in *v1.Pers
|
||||
out.ClaimRef = (*api.ObjectReference)(unsafe.Pointer(in.ClaimRef))
|
||||
out.PersistentVolumeReclaimPolicy = api.PersistentVolumeReclaimPolicy(in.PersistentVolumeReclaimPolicy)
|
||||
out.StorageClassName = in.StorageClassName
|
||||
out.MountOptions = *(*[]string)(unsafe.Pointer(&in.MountOptions))
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -3169,6 +3170,7 @@ func autoConvert_api_PersistentVolumeSpec_To_v1_PersistentVolumeSpec(in *api.Per
|
||||
out.ClaimRef = (*v1.ObjectReference)(unsafe.Pointer(in.ClaimRef))
|
||||
out.PersistentVolumeReclaimPolicy = v1.PersistentVolumeReclaimPolicy(in.PersistentVolumeReclaimPolicy)
|
||||
out.StorageClassName = in.StorageClassName
|
||||
out.MountOptions = *(*[]string)(unsafe.Pointer(&in.MountOptions))
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -3884,6 +3884,11 @@ func (in *PersistentVolumeSpec) DeepCopyInto(out *PersistentVolumeSpec) {
|
||||
**out = **in
|
||||
}
|
||||
}
|
||||
if in.MountOptions != nil {
|
||||
in, out := &in.MountOptions, &out.MountOptions
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user