From 2c0d6053fa7306e9bd5aa3e12f4b6c6f8db9532d Mon Sep 17 00:00:00 2001 From: draveness Date: Sat, 7 Sep 2019 00:12:02 +0800 Subject: [PATCH] feat: remove PersistentLocalVolumes feature gates --- pkg/features/kube_features.go | 9 --------- pkg/volume/util/operationexecutor/operation_generator.go | 4 ---- test/integration/volumescheduling/BUILD | 3 --- test/integration/volumescheduling/volume_binding_test.go | 9 --------- 4 files changed, 25 deletions(-) diff --git a/pkg/features/kube_features.go b/pkg/features/kube_features.go index a4dfbdd879d..58e7038cf12 100644 --- a/pkg/features/kube_features.go +++ b/pkg/features/kube_features.go @@ -83,14 +83,6 @@ const ( // the API server as the certificate approaches expiration. RotateKubeletClientCertificate featuregate.Feature = "RotateKubeletClientCertificate" - // owner: @msau42 - // alpha: v1.7 - // beta: v1.10 - // ga: v1.14 - // - // A new volume type that supports local disks on a node. - PersistentLocalVolumes featuregate.Feature = "PersistentLocalVolumes" - // owner: @jinxu // beta: v1.10 // @@ -520,7 +512,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS TaintBasedEvictions: {Default: true, PreRelease: featuregate.Beta}, RotateKubeletServerCertificate: {Default: true, PreRelease: featuregate.Beta}, RotateKubeletClientCertificate: {Default: true, PreRelease: featuregate.Beta}, - PersistentLocalVolumes: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.17 LocalStorageCapacityIsolation: {Default: true, PreRelease: featuregate.Beta}, Sysctls: {Default: true, PreRelease: featuregate.Beta}, EphemeralContainers: {Default: false, PreRelease: featuregate.Alpha}, diff --git a/pkg/volume/util/operationexecutor/operation_generator.go b/pkg/volume/util/operationexecutor/operation_generator.go index ff864df2565..82d8e133170 100644 --- a/pkg/volume/util/operationexecutor/operation_generator.go +++ b/pkg/volume/util/operationexecutor/operation_generator.go @@ -1760,10 +1760,6 @@ func checkMountOptionSupport(og *operationGenerator, volumeToMount VolumeToMount // checkNodeAffinity looks at the PV node affinity, and checks if the node has the same corresponding labels // This ensures that we don't mount a volume that doesn't belong to this node func checkNodeAffinity(og *operationGenerator, volumeToMount VolumeToMount) error { - if !utilfeature.DefaultFeatureGate.Enabled(features.PersistentLocalVolumes) { - return nil - } - pv := volumeToMount.VolumeSpec.PersistentVolume if pv != nil { nodeLabels, err := og.volumePluginMgr.Host.GetNodeLabels() diff --git a/test/integration/volumescheduling/BUILD b/test/integration/volumescheduling/BUILD index cb5b316f393..679ae416fd3 100644 --- a/test/integration/volumescheduling/BUILD +++ b/test/integration/volumescheduling/BUILD @@ -18,7 +18,6 @@ go_test( deps = [ "//pkg/controller/volume/persistentvolume:go_default_library", "//pkg/controller/volume/persistentvolume/options:go_default_library", - "//pkg/features:go_default_library", "//pkg/scheduler/algorithm/predicates:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/testing:go_default_library", @@ -29,11 +28,9 @@ go_test( "//staging/src/k8s.io/apimachinery/pkg/util/rand:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library", - "//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library", "//staging/src/k8s.io/client-go/informers:go_default_library", "//staging/src/k8s.io/client-go/kubernetes:go_default_library", "//staging/src/k8s.io/client-go/util/workqueue:go_default_library", - "//staging/src/k8s.io/component-base/featuregate/testing:go_default_library", "//test/integration/framework:go_default_library", "//test/utils/image:go_default_library", "//vendor/k8s.io/klog:go_default_library", diff --git a/test/integration/volumescheduling/volume_binding_test.go b/test/integration/volumescheduling/volume_binding_test.go index d260c9fa514..c1e8602f5f1 100644 --- a/test/integration/volumescheduling/volume_binding_test.go +++ b/test/integration/volumescheduling/volume_binding_test.go @@ -36,14 +36,11 @@ import ( "k8s.io/apimachinery/pkg/util/rand" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" - utilfeature "k8s.io/apiserver/pkg/util/feature" "k8s.io/client-go/informers" clientset "k8s.io/client-go/kubernetes" "k8s.io/client-go/util/workqueue" - featuregatetesting "k8s.io/component-base/featuregate/testing" "k8s.io/kubernetes/pkg/controller/volume/persistentvolume" persistentvolumeoptions "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/options" - "k8s.io/kubernetes/pkg/features" "k8s.io/kubernetes/pkg/scheduler/algorithm/predicates" "k8s.io/kubernetes/pkg/volume" volumetest "k8s.io/kubernetes/pkg/volume/testing" @@ -99,7 +96,6 @@ type testPVC struct { } func TestVolumeBinding(t *testing.T) { - defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.PersistentLocalVolumes, true)() config := setupCluster(t, "volume-scheduling-", 2, 0, 0) defer config.teardown() @@ -269,7 +265,6 @@ func TestVolumeBinding(t *testing.T) { // TestVolumeBindingRescheduling tests scheduler will retry scheduling when needed. func TestVolumeBindingRescheduling(t *testing.T) { - defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.PersistentLocalVolumes, true)() config := setupCluster(t, "volume-scheduling-", 2, 0, 0) defer config.teardown() @@ -412,7 +407,6 @@ func TestVolumeBindingDynamicStressSlow(t *testing.T) { } func testVolumeBindingStress(t *testing.T, schedulerResyncPeriod time.Duration, dynamic bool, provisionDelaySeconds int) { - defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.PersistentLocalVolumes, true)() config := setupCluster(t, "volume-binding-stress-", 1, schedulerResyncPeriod, provisionDelaySeconds) defer config.teardown() @@ -512,7 +506,6 @@ func testVolumeBindingStress(t *testing.T, schedulerResyncPeriod time.Duration, } func testVolumeBindingWithAffinity(t *testing.T, anti bool, numNodes, numPods, numPVsFirstNode int) { - defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.PersistentLocalVolumes, true)() config := setupCluster(t, "volume-pod-affinity-", numNodes, 0, 0) defer config.teardown() @@ -638,7 +631,6 @@ func TestVolumeBindingWithAffinity(t *testing.T) { } func TestPVAffinityConflict(t *testing.T) { - defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.PersistentLocalVolumes, true)() config := setupCluster(t, "volume-scheduling-", 3, 0, 0) defer config.teardown() @@ -698,7 +690,6 @@ func TestPVAffinityConflict(t *testing.T) { } func TestVolumeProvision(t *testing.T) { - defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.PersistentLocalVolumes, true)() config := setupCluster(t, "volume-scheduling", 1, 0, 0) defer config.teardown()