mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-09 03:57:41 +00:00
deprecate RBD plugin from available in-tree drivers
Based on https://groups.google.com/g/kubernetes-sig-storage/c/h5751_B5LQM, the consensus was to start the deprecation in v1.28. This commit start the deprecation process of RBD plugin from in-tree drivers. ACTION REQUIRED: RBD volume plugin ( `kubernetes.io/rbd`) has been deprecated in this release and will be removed in a subsequent release. Alternative is to use RBD CSI driver (https://github.com/ceph/ceph-csi/) in your Kubernetes Cluster. Signed-off-by: Humble Chirammal <humble.devassy@gmail.com>
This commit is contained in:
parent
8fd27c6137
commit
471fd1ae8a
@ -93,8 +93,10 @@ func warningsForPersistentVolumeSpecAndMeta(fieldPath *field.Path, pvSpec *api.P
|
|||||||
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.22, non-functional in v1.25+", fieldPath.Child("spec", "persistentVolumeSource").Child("storageOS")))
|
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.22, non-functional in v1.25+", fieldPath.Child("spec", "persistentVolumeSource").Child("storageOS")))
|
||||||
}
|
}
|
||||||
if pvSpec.Glusterfs != nil {
|
if pvSpec.Glusterfs != nil {
|
||||||
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.25, non-functional in v1.26+", fieldPath.Child("spec", "persistentVolumeSource").Child("glusterfs")))
|
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.25, non-functional in v1.26+", fieldPath.Child("spec", "glusterfs")))
|
||||||
|
}
|
||||||
|
if pvSpec.RBD != nil {
|
||||||
|
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.28, non-functional in v1.31+", fieldPath.Child("spec", "rbd")))
|
||||||
}
|
}
|
||||||
|
|
||||||
return warnings
|
return warnings
|
||||||
}
|
}
|
||||||
|
@ -212,6 +212,27 @@ func TestWarnings(t *testing.T) {
|
|||||||
`spec.persistentVolumeSource.photonPersistentDisk: deprecated in v1.11, non-functional in v1.16+`,
|
`spec.persistentVolumeSource.photonPersistentDisk: deprecated in v1.11, non-functional in v1.16+`,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "PV RBD deprecation warning",
|
||||||
|
template: &api.PersistentVolume{
|
||||||
|
Spec: api.PersistentVolumeSpec{
|
||||||
|
PersistentVolumeSource: api.PersistentVolumeSource{
|
||||||
|
RBD: &api.RBDPersistentVolumeSource{
|
||||||
|
CephMonitors: nil,
|
||||||
|
RBDImage: "",
|
||||||
|
FSType: "",
|
||||||
|
RBDPool: "",
|
||||||
|
RadosUser: "",
|
||||||
|
Keyring: "",
|
||||||
|
SecretRef: nil,
|
||||||
|
ReadOnly: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
expected: []string{
|
||||||
|
`spec.rbd: deprecated in v1.28, non-functional in v1.31+`},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "PV ScaleIO deprecation warning",
|
name: "PV ScaleIO deprecation warning",
|
||||||
template: &api.PersistentVolume{
|
template: &api.PersistentVolume{
|
||||||
|
@ -163,6 +163,9 @@ func warningsForPodSpecAndMeta(fieldPath *field.Path, podSpec *api.PodSpec, meta
|
|||||||
if v.CephFS != nil {
|
if v.CephFS != nil {
|
||||||
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.28, non-functional in v1.31+", fieldPath.Child("spec", "volumes").Index(i).Child("cephfs")))
|
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.28, non-functional in v1.31+", fieldPath.Child("spec", "volumes").Index(i).Child("cephfs")))
|
||||||
}
|
}
|
||||||
|
if v.RBD != nil {
|
||||||
|
warnings = append(warnings, fmt.Sprintf("%s: deprecated in v1.28, non-functional in v1.31+", fieldPath.Child("spec", "volumes").Index(i).Child("rbd")))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// duplicate hostAliases (#91670, #58477)
|
// duplicate hostAliases (#91670, #58477)
|
||||||
|
@ -224,6 +224,15 @@ func TestWarnings(t *testing.T) {
|
|||||||
expected: []string{`spec.volumes[0].cephfs: deprecated in v1.28, non-functional in v1.31+`},
|
expected: []string{`spec.volumes[0].cephfs: deprecated in v1.28, non-functional in v1.31+`},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name: "rbd",
|
||||||
|
template: &api.PodTemplateSpec{Spec: api.PodSpec{
|
||||||
|
Volumes: []api.Volume{
|
||||||
|
{Name: "s", VolumeSource: api.VolumeSource{RBD: &api.RBDVolumeSource{}}},
|
||||||
|
}},
|
||||||
|
},
|
||||||
|
expected: []string{`spec.volumes[0].rbd: deprecated in v1.28, non-functional in v1.31+`},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "duplicate hostAlias",
|
name: "duplicate hostAlias",
|
||||||
template: &api.PodTemplateSpec{Spec: api.PodSpec{
|
template: &api.PodTemplateSpec{Spec: api.PodSpec{
|
||||||
|
Loading…
Reference in New Issue
Block a user