Skip to content

Commit a18e5de

Browse files
committed
LockToDefault the ExternalPolicyForExternalIP feature gate
1 parent 66334f0 commit a18e5de

File tree

7 files changed

+4
-25
lines changed

7 files changed

+4
-25
lines changed

pkg/features/kube_features.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -734,7 +734,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
734734
ImmutableEphemeralVolumes: {Default: true, PreRelease: featuregate.Beta},
735735
DefaultIngressClass: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.20
736736
HugePageStorageMediumSize: {Default: true, PreRelease: featuregate.Beta},
737-
ExternalPolicyForExternalIP: {Default: true, PreRelease: featuregate.GA}, // remove in 1.20
737+
ExternalPolicyForExternalIP: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.22
738738
AnyVolumeDataSource: {Default: false, PreRelease: featuregate.Alpha},
739739
DefaultPodTopologySpread: {Default: false, PreRelease: featuregate.Alpha},
740740
SetHostnameAsFQDN: {Default: false, PreRelease: featuregate.Alpha},

pkg/proxy/iptables/BUILD

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ go_test(
3939
srcs = ["proxier_test.go"],
4040
embed = [":go_default_library"],
4141
deps = [
42-
"//pkg/features:go_default_library",
4342
"//pkg/proxy:go_default_library",
4443
"//pkg/proxy/healthcheck:go_default_library",
4544
"//pkg/proxy/util:go_default_library",
@@ -54,8 +53,6 @@ go_test(
5453
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
5554
"//staging/src/k8s.io/apimachinery/pkg/types:go_default_library",
5655
"//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
57-
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
58-
"//staging/src/k8s.io/component-base/featuregate/testing:go_default_library",
5956
"//vendor/github.com/stretchr/testify/assert:go_default_library",
6057
"//vendor/k8s.io/klog/v2:go_default_library",
6158
"//vendor/k8s.io/utils/exec:go_default_library",

pkg/proxy/iptables/proxier.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1105,7 +1105,7 @@ func (proxier *Proxier) syncProxyRules() {
11051105

11061106
destChain := svcXlbChain
11071107
// We have to SNAT packets to external IPs if externalTrafficPolicy is cluster.
1108-
if !(utilfeature.DefaultFeatureGate.Enabled(features.ExternalPolicyForExternalIP) && svcInfo.OnlyNodeLocalEndpoints()) {
1108+
if !svcInfo.OnlyNodeLocalEndpoints() {
11091109
destChain = svcChain
11101110
writeLine(proxier.natRules, append(args, "-j", string(KubeMarkMasqChain))...)
11111111
}

pkg/proxy/iptables/proxier_test.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,6 @@ import (
3434
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3535
"k8s.io/apimachinery/pkg/types"
3636
"k8s.io/apimachinery/pkg/util/intstr"
37-
utilfeature "k8s.io/apiserver/pkg/util/feature"
38-
featuregatetesting "k8s.io/component-base/featuregate/testing"
39-
"k8s.io/kubernetes/pkg/features"
4037
"k8s.io/kubernetes/pkg/proxy"
4138
"k8s.io/kubernetes/pkg/proxy/healthcheck"
4239
utilproxy "k8s.io/kubernetes/pkg/proxy/util"
@@ -841,9 +838,6 @@ func TestExternalIPsReject(t *testing.T) {
841838
}
842839

843840
func TestOnlyLocalExternalIPs(t *testing.T) {
844-
// TODO(freehan): remove this in k8s 1.19
845-
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ExternalPolicyForExternalIP, true)()
846-
847841
ipt := iptablestest.NewFake()
848842
fp := NewFakeProxier(ipt, false)
849843
svcIP := "10.20.30.41"

pkg/proxy/ipvs/BUILD

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ go_test(
1515
],
1616
embed = [":go_default_library"],
1717
deps = [
18-
"//pkg/features:go_default_library",
1918
"//pkg/proxy:go_default_library",
2019
"//pkg/proxy/healthcheck:go_default_library",
2120
"//pkg/proxy/ipvs/testing:go_default_library",
@@ -35,8 +34,6 @@ go_test(
3534
"//staging/src/k8s.io/apimachinery/pkg/types:go_default_library",
3635
"//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
3736
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
38-
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
39-
"//staging/src/k8s.io/component-base/featuregate/testing:go_default_library",
4037
"//vendor/github.com/stretchr/testify/assert:go_default_library",
4138
"//vendor/k8s.io/utils/exec:go_default_library",
4239
"//vendor/k8s.io/utils/exec/testing:go_default_library",

pkg/proxy/ipvs/proxier.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1263,7 +1263,7 @@ func (proxier *Proxier) syncProxyRules() {
12631263
SetType: utilipset.HashIPPort,
12641264
}
12651265

1266-
if utilfeature.DefaultFeatureGate.Enabled(features.ExternalPolicyForExternalIP) && svcInfo.OnlyNodeLocalEndpoints() {
1266+
if svcInfo.OnlyNodeLocalEndpoints() {
12671267
if valid := proxier.ipsetList[kubeExternalIPLocalSet].validateEntry(entry); !valid {
12681268
klog.Errorf("%s", fmt.Sprintf(EntryInvalidErr, entry, proxier.ipsetList[kubeExternalIPLocalSet].Name))
12691269
continue
@@ -1293,10 +1293,7 @@ func (proxier *Proxier) syncProxyRules() {
12931293
activeIPVSServices[serv.String()] = true
12941294
activeBindAddrs[serv.Address.String()] = true
12951295

1296-
onlyNodeLocalEndpoints := false
1297-
if utilfeature.DefaultFeatureGate.Enabled(features.ExternalPolicyForExternalIP) {
1298-
onlyNodeLocalEndpoints = svcInfo.OnlyNodeLocalEndpoints()
1299-
}
1296+
onlyNodeLocalEndpoints := svcInfo.OnlyNodeLocalEndpoints()
13001297
if err := proxier.syncEndpoint(svcName, onlyNodeLocalEndpoints, serv); err != nil {
13011298
klog.Errorf("Failed to sync endpoint for service: %v, err: %v", serv, err)
13021299
}

pkg/proxy/ipvs/proxier_test.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,6 @@ import (
3333
"k8s.io/apimachinery/pkg/types"
3434
"k8s.io/apimachinery/pkg/util/intstr"
3535
"k8s.io/apimachinery/pkg/util/sets"
36-
utilfeature "k8s.io/apiserver/pkg/util/feature"
37-
featuregatetesting "k8s.io/component-base/featuregate/testing"
38-
"k8s.io/kubernetes/pkg/features"
3936
"k8s.io/kubernetes/pkg/proxy"
4037
"k8s.io/kubernetes/pkg/proxy/healthcheck"
4138
netlinktest "k8s.io/kubernetes/pkg/proxy/ipvs/testing"
@@ -1265,9 +1262,6 @@ func TestExternalIPs(t *testing.T) {
12651262
}
12661263

12671264
func TestOnlyLocalExternalIPs(t *testing.T) {
1268-
// TODO(freehan): remove this in k8s 1.19
1269-
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ExternalPolicyForExternalIP, true)()
1270-
12711265
ipt := iptablestest.NewFake()
12721266
ipvs := ipvstest.NewFake()
12731267
ipset := ipsettest.NewFake(testIPSetVersion)

0 commit comments

Comments
 (0)