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