mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-22 11:21:47 +00:00
Mark NodeExpansion finsihed without featuregate check
This commit is contained in:
parent
4370821c87
commit
e4e7f313ff
@ -49,9 +49,10 @@ func TestNodeExpander(t *testing.T) {
|
||||
|
||||
nodeResizePending := v1.PersistentVolumeClaimNodeResizePending
|
||||
var tests = []struct {
|
||||
name string
|
||||
pvc *v1.PersistentVolumeClaim
|
||||
pv *v1.PersistentVolume
|
||||
name string
|
||||
pvc *v1.PersistentVolumeClaim
|
||||
pv *v1.PersistentVolume
|
||||
recoverVolumeExpansionFailure bool
|
||||
|
||||
// desired size, defaults to pv.Spec.Capacity
|
||||
desiredSize *resource.Quantity
|
||||
@ -67,9 +68,10 @@ func TestNodeExpander(t *testing.T) {
|
||||
expectError bool
|
||||
}{
|
||||
{
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_failed",
|
||||
pvc: getTestPVC("test-vol0", "2G", "1G", "", &nodeResizeFailed),
|
||||
pv: getTestPV("test-vol0", "2G"),
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_failed",
|
||||
pvc: getTestPVC("test-vol0", "2G", "1G", "", &nodeResizeFailed),
|
||||
pv: getTestPV("test-vol0", "2G"),
|
||||
recoverVolumeExpansionFailure: true,
|
||||
|
||||
expectedResizeStatus: nodeResizeFailed,
|
||||
expectResizeCall: false,
|
||||
@ -78,9 +80,11 @@ func TestNodeExpander(t *testing.T) {
|
||||
expectedStatusSize: resource.MustParse("1G"),
|
||||
},
|
||||
{
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_pending",
|
||||
pvc: getTestPVC("test-vol0", "2G", "1G", "2G", &nodeResizePending),
|
||||
pv: getTestPV("test-vol0", "2G"),
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_pending",
|
||||
pvc: getTestPVC("test-vol0", "2G", "1G", "2G", &nodeResizePending),
|
||||
pv: getTestPV("test-vol0", "2G"),
|
||||
recoverVolumeExpansionFailure: true,
|
||||
|
||||
expectedResizeStatus: "",
|
||||
expectResizeCall: true,
|
||||
assumeResizeOpAsFinished: true,
|
||||
@ -88,31 +92,34 @@ func TestNodeExpander(t *testing.T) {
|
||||
expectedStatusSize: resource.MustParse("2G"),
|
||||
},
|
||||
{
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_pending, reize_op=infeasible",
|
||||
pvc: getTestPVC(volumetesting.InfeasibleNodeExpansion, "2G", "1G", "2G", &nodeResizePending),
|
||||
pv: getTestPV(volumetesting.InfeasibleNodeExpansion, "2G"),
|
||||
expectError: true,
|
||||
expectedResizeStatus: nodeResizeFailed,
|
||||
expectResizeCall: true,
|
||||
assumeResizeOpAsFinished: true,
|
||||
expectFinalErrors: true,
|
||||
expectedStatusSize: resource.MustParse("1G"),
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_pending, reize_op=infeasible",
|
||||
pvc: getTestPVC(volumetesting.InfeasibleNodeExpansion, "2G", "1G", "2G", &nodeResizePending),
|
||||
pv: getTestPV(volumetesting.InfeasibleNodeExpansion, "2G"),
|
||||
recoverVolumeExpansionFailure: false,
|
||||
expectError: true,
|
||||
expectedResizeStatus: nodeResizeFailed,
|
||||
expectResizeCall: true,
|
||||
assumeResizeOpAsFinished: true,
|
||||
expectFinalErrors: true,
|
||||
expectedStatusSize: resource.MustParse("1G"),
|
||||
},
|
||||
{
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_pending, reize_op=failing",
|
||||
pvc: getTestPVC(volumetesting.OtherFinalNodeExpansionError, "2G", "1G", "2G", &nodeResizePending),
|
||||
pv: getTestPV(volumetesting.OtherFinalNodeExpansionError, "2G"),
|
||||
expectError: true,
|
||||
expectedResizeStatus: v1.PersistentVolumeClaimNodeResizeInProgress,
|
||||
expectResizeCall: true,
|
||||
assumeResizeOpAsFinished: true,
|
||||
expectFinalErrors: true,
|
||||
expectedStatusSize: resource.MustParse("1G"),
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_pending, reize_op=failing",
|
||||
pvc: getTestPVC(volumetesting.OtherFinalNodeExpansionError, "2G", "1G", "2G", &nodeResizePending),
|
||||
pv: getTestPV(volumetesting.OtherFinalNodeExpansionError, "2G"),
|
||||
recoverVolumeExpansionFailure: true,
|
||||
expectError: true,
|
||||
expectedResizeStatus: v1.PersistentVolumeClaimNodeResizeInProgress,
|
||||
expectResizeCall: true,
|
||||
assumeResizeOpAsFinished: true,
|
||||
expectFinalErrors: true,
|
||||
expectedStatusSize: resource.MustParse("1G"),
|
||||
},
|
||||
{
|
||||
name: "pv.spec.cap = pvc.status.cap, resizeStatus='', desiredSize > actualSize",
|
||||
pvc: getTestPVC("test-vol0", "2G", "2G", "2G", nil),
|
||||
pv: getTestPV("test-vol0", "2G"),
|
||||
name: "pv.spec.cap > pvc.status.cap, resizeStatus=node_expansion_pending, featuregate=disabled",
|
||||
pvc: getTestPVC("test-vol0", "2G", "1G", "2G", &nodeResizePending),
|
||||
pv: getTestPV("test-vol0", "2G"),
|
||||
recoverVolumeExpansionFailure: false,
|
||||
|
||||
expectedResizeStatus: "",
|
||||
expectResizeCall: true,
|
||||
@ -125,7 +132,7 @@ func TestNodeExpander(t *testing.T) {
|
||||
for i := range tests {
|
||||
test := tests[i]
|
||||
t.Run(test.name, func(t *testing.T) {
|
||||
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.RecoverVolumeExpansionFailure, true)
|
||||
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.RecoverVolumeExpansionFailure, test.recoverVolumeExpansionFailure)
|
||||
volumePluginMgr, fakePlugin := volumetesting.GetTestKubeletVolumePluginMgr(t)
|
||||
|
||||
pvc := test.pvc
|
||||
|
@ -244,7 +244,6 @@ func MarkNodeExpansionFinishedWithRecovery(
|
||||
|
||||
newPVC.Status.Capacity[v1.ResourceStorage] = newSize
|
||||
|
||||
// if RecoverVolumeExpansionFailure is enabled, we need to reset ResizeStatus back to nil
|
||||
allocatedResourceStatusMap := newPVC.Status.AllocatedResourceStatuses
|
||||
delete(allocatedResourceStatusMap, v1.ResourceStorage)
|
||||
if len(allocatedResourceStatusMap) == 0 {
|
||||
|
Loading…
Reference in New Issue
Block a user