Skip to content

Commit c6cc1a4

Browse files
stlazk8s-publishing-bot
authored andcommitted
bump RemoteRequestHeaderUID featuregate to Beta, on by default
Kubernetes-commit: b3890d9fa0d054b9b97b3496423664c0baf1c567
1 parent 17b3605 commit c6cc1a4

File tree

1 file changed

+33
-28
lines changed

1 file changed

+33
-28
lines changed

pkg/apiserver/handler_proxy_test.go

Lines changed: 33 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ import (
5757
utilflowcontrol "k8s.io/apiserver/pkg/util/flowcontrol"
5858
apiserverproxyutil "k8s.io/apiserver/pkg/util/proxy"
5959
"k8s.io/client-go/transport"
60-
"k8s.io/component-base/featuregate"
6160
featuregatetesting "k8s.io/component-base/featuregate/testing"
6261
"k8s.io/component-base/metrics"
6362
"k8s.io/component-base/metrics/legacyregistry"
@@ -134,10 +133,11 @@ func TestProxyHandler(t *testing.T) {
134133
expectedCalled bool
135134
expectedHeaders map[string][]string
136135

137-
enableFeatureGates []featuregate.Feature
136+
remoteRequestHeaderUIDFeature bool
138137
}{
139138
"no target": {
140-
expectedStatusCode: http.StatusNotFound,
139+
expectedStatusCode: http.StatusNotFound,
140+
remoteRequestHeaderUIDFeature: true,
141141
},
142142
"no user": {
143143
apiService: &apiregistration.APIService{
@@ -153,10 +153,11 @@ func TestProxyHandler(t *testing.T) {
153153
},
154154
},
155155
},
156-
expectedStatusCode: http.StatusInternalServerError,
157-
expectedBody: "missing user",
156+
expectedStatusCode: http.StatusInternalServerError,
157+
expectedBody: "missing user",
158+
remoteRequestHeaderUIDFeature: true,
158159
},
159-
"proxy with user, insecure": {
160+
"[-RemoteRequestHeaderUID] proxy with user, insecure": {
160161
user: &user.DefaultInfo{
161162
Name: "username",
162163
UID: "6b60d791-1af9-4513-92e5-e4252a1e0a78",
@@ -177,8 +178,9 @@ func TestProxyHandler(t *testing.T) {
177178
},
178179
},
179180
},
180-
expectedStatusCode: http.StatusOK,
181-
expectedCalled: true,
181+
remoteRequestHeaderUIDFeature: false,
182+
expectedStatusCode: http.StatusOK,
183+
expectedCalled: true,
182184
expectedHeaders: map[string][]string{
183185
"X-Forwarded-Proto": {"https"},
184186
"X-Forwarded-Uri": {"/request/path"},
@@ -189,7 +191,7 @@ func TestProxyHandler(t *testing.T) {
189191
"X-Remote-Group": {"one", "two"},
190192
},
191193
},
192-
"[RemoteRequestHeaderUID] proxy with user, insecure": {
194+
"proxy with user, insecure": {
193195
user: &user.DefaultInfo{
194196
Name: "username",
195197
UID: "6b60d791-1af9-4513-92e5-e4252a1e0a78",
@@ -210,9 +212,9 @@ func TestProxyHandler(t *testing.T) {
210212
},
211213
},
212214
},
213-
enableFeatureGates: []featuregate.Feature{features.RemoteRequestHeaderUID},
214-
expectedStatusCode: http.StatusOK,
215-
expectedCalled: true,
215+
remoteRequestHeaderUIDFeature: true,
216+
expectedStatusCode: http.StatusOK,
217+
expectedCalled: true,
216218
expectedHeaders: map[string][]string{
217219
"X-Forwarded-Proto": {"https"},
218220
"X-Forwarded-Uri": {"/request/path"},
@@ -224,7 +226,7 @@ func TestProxyHandler(t *testing.T) {
224226
"X-Remote-Group": {"one", "two"},
225227
},
226228
},
227-
"proxy with user, cabundle": {
229+
"[-RemoteRequestHeaderUID] proxy with user, cabundle": {
228230
user: &user.DefaultInfo{
229231
Name: "username",
230232
UID: "6b60d791-1af9-4513-92e5-e4252a1e0a78",
@@ -245,8 +247,9 @@ func TestProxyHandler(t *testing.T) {
245247
},
246248
},
247249
},
248-
expectedStatusCode: http.StatusOK,
249-
expectedCalled: true,
250+
remoteRequestHeaderUIDFeature: false,
251+
expectedStatusCode: http.StatusOK,
252+
expectedCalled: true,
250253
expectedHeaders: map[string][]string{
251254
"X-Forwarded-Proto": {"https"},
252255
"X-Forwarded-Uri": {"/request/path"},
@@ -257,7 +260,7 @@ func TestProxyHandler(t *testing.T) {
257260
"X-Remote-Group": {"one", "two"},
258261
},
259262
},
260-
"[RemoteRequestHeaderUID] proxy with user, cabundle": {
263+
"proxy with user, cabundle": {
261264
user: &user.DefaultInfo{
262265
Name: "username",
263266
UID: "6b60d791-1af9-4513-92e5-e4252a1e0a78",
@@ -278,9 +281,9 @@ func TestProxyHandler(t *testing.T) {
278281
},
279282
},
280283
},
281-
enableFeatureGates: []featuregate.Feature{features.RemoteRequestHeaderUID},
282-
expectedStatusCode: http.StatusOK,
283-
expectedCalled: true,
284+
remoteRequestHeaderUIDFeature: true,
285+
expectedStatusCode: http.StatusOK,
286+
expectedCalled: true,
284287
expectedHeaders: map[string][]string{
285288
"X-Forwarded-Proto": {"https"},
286289
"X-Forwarded-Uri": {"/request/path"},
@@ -313,7 +316,8 @@ func TestProxyHandler(t *testing.T) {
313316
},
314317
},
315318
},
316-
expectedStatusCode: http.StatusServiceUnavailable,
319+
remoteRequestHeaderUIDFeature: true,
320+
expectedStatusCode: http.StatusServiceUnavailable,
317321
},
318322
"service unresolveable": {
319323
user: &user.DefaultInfo{
@@ -337,7 +341,8 @@ func TestProxyHandler(t *testing.T) {
337341
},
338342
},
339343
},
340-
expectedStatusCode: http.StatusServiceUnavailable,
344+
remoteRequestHeaderUIDFeature: true,
345+
expectedStatusCode: http.StatusServiceUnavailable,
341346
},
342347
"fail on bad serving cert": {
343348
user: &user.DefaultInfo{
@@ -359,7 +364,8 @@ func TestProxyHandler(t *testing.T) {
359364
},
360365
},
361366
},
362-
expectedStatusCode: http.StatusServiceUnavailable,
367+
remoteRequestHeaderUIDFeature: true,
368+
expectedStatusCode: http.StatusServiceUnavailable,
363369
},
364370
"fail on bad serving cert w/o SAN and increase SAN error counter metrics": {
365371
user: &user.DefaultInfo{
@@ -382,9 +388,10 @@ func TestProxyHandler(t *testing.T) {
382388
},
383389
},
384390
},
385-
serviceCertOverride: svcCrtNoSAN,
386-
increaseSANWarnCounter: true,
387-
expectedStatusCode: http.StatusServiceUnavailable,
391+
serviceCertOverride: svcCrtNoSAN,
392+
increaseSANWarnCounter: true,
393+
remoteRequestHeaderUIDFeature: true,
394+
expectedStatusCode: http.StatusServiceUnavailable,
388395
},
389396
}
390397

@@ -394,9 +401,7 @@ func TestProxyHandler(t *testing.T) {
394401
legacyregistry.Reset()
395402

396403
t.Run(name, func(t *testing.T) {
397-
for _, f := range tc.enableFeatureGates {
398-
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, f, true)
399-
}
404+
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.RemoteRequestHeaderUID, tc.remoteRequestHeaderUIDFeature)
400405

401406
targetServer := httptest.NewUnstartedServer(target)
402407
serviceCert := tc.serviceCertOverride

0 commit comments

Comments
 (0)