@@ -89,11 +89,15 @@ var kubeProxyDowngradeTests = []upgrades.Test{
89
89
& upgrades.ServiceUpgradeTest {},
90
90
}
91
91
92
+ var serviceaccountAdmissionControllerMigrationTests = []upgrades.Test {
93
+ & upgrades.ServiceAccountAdmissionControllerMigrationTest {},
94
+ }
95
+
92
96
// masterUpgrade upgrades master node on GCE/GKE.
93
- func masterUpgrade (f * framework.Framework , v string ) error {
97
+ func masterUpgrade (f * framework.Framework , v string , extraEnvs [] string ) error {
94
98
switch framework .TestContext .Provider {
95
99
case "gce" :
96
- return masterUpgradeGCE (v , false )
100
+ return masterUpgradeGCE (v , extraEnvs )
97
101
case "gke" :
98
102
return framework .MasterUpgradeGKE (f .Namespace .Name , v )
99
103
default :
@@ -104,12 +108,11 @@ func masterUpgrade(f *framework.Framework, v string) error {
104
108
// masterUpgradeGCEWithKubeProxyDaemonSet upgrades master node on GCE with enabling/disabling the daemon set of kube-proxy.
105
109
// TODO(mrhohn): Remove this function when kube-proxy is run as a DaemonSet by default.
106
110
func masterUpgradeGCEWithKubeProxyDaemonSet (v string , enableKubeProxyDaemonSet bool ) error {
107
- return masterUpgradeGCE (v , enableKubeProxyDaemonSet )
111
+ return masterUpgradeGCE (v , [] string { fmt . Sprintf ( "KUBE_PROXY_DAEMONSET=%v" , enableKubeProxyDaemonSet )} )
108
112
}
109
113
110
- // TODO(mrhohn): Remove 'enableKubeProxyDaemonSet' when kube-proxy is run as a DaemonSet by default.
111
- func masterUpgradeGCE (rawV string , enableKubeProxyDaemonSet bool ) error {
112
- env := append (os .Environ (), fmt .Sprintf ("KUBE_PROXY_DAEMONSET=%v" , enableKubeProxyDaemonSet ))
114
+ func masterUpgradeGCE (rawV string , extraEnvs []string ) error {
115
+ env := append (os .Environ (), extraEnvs ... )
113
116
// TODO: Remove these variables when they're no longer needed for downgrades.
114
117
if framework .TestContext .EtcdUpgradeVersion != "" && framework .TestContext .EtcdUpgradeStorage != "" {
115
118
env = append (env ,
@@ -149,7 +152,7 @@ var _ = SIGDescribe("Upgrade [Feature:Upgrade]", func() {
149
152
start := time .Now ()
150
153
defer finalizeUpgradeTest (start , masterUpgradeTest )
151
154
target := upgCtx .Versions [1 ].Version .String ()
152
- framework .ExpectNoError (masterUpgrade (f , target ))
155
+ framework .ExpectNoError (masterUpgrade (f , target , nil ))
153
156
framework .ExpectNoError (checkMasterVersion (f .ClientSet , target ))
154
157
}
155
158
runUpgradeSuite (f , upgradeTests , testFrameworks , testSuite , upgrades .MasterUpgrade , upgradeFunc )
@@ -190,7 +193,7 @@ var _ = SIGDescribe("Upgrade [Feature:Upgrade]", func() {
190
193
start := time .Now ()
191
194
defer finalizeUpgradeTest (start , clusterUpgradeTest )
192
195
target := upgCtx .Versions [1 ].Version .String ()
193
- framework .ExpectNoError (masterUpgrade (f , target ))
196
+ framework .ExpectNoError (masterUpgrade (f , target , nil ))
194
197
framework .ExpectNoError (checkMasterVersion (f .ClientSet , target ))
195
198
framework .ExpectNoError (nodeUpgrade (f , target , * upgradeImage ))
196
199
framework .ExpectNoError (checkNodesVersions (f .ClientSet , target ))
@@ -223,7 +226,7 @@ var _ = SIGDescribe("Downgrade [Feature:Downgrade]", func() {
223
226
target := upgCtx .Versions [1 ].Version .String ()
224
227
framework .ExpectNoError (nodeUpgrade (f , target , * upgradeImage ))
225
228
framework .ExpectNoError (checkNodesVersions (f .ClientSet , target ))
226
- framework .ExpectNoError (masterUpgrade (f , target ))
229
+ framework .ExpectNoError (masterUpgrade (f , target , nil ))
227
230
framework .ExpectNoError (checkMasterVersion (f .ClientSet , target ))
228
231
}
229
232
runUpgradeSuite (f , upgradeTests , testFrameworks , testSuite , upgrades .ClusterUpgrade , upgradeFunc )
@@ -271,7 +274,7 @@ var _ = SIGDescribe("gpu Upgrade [Feature:GPUUpgrade]", func() {
271
274
start := time .Now ()
272
275
defer finalizeUpgradeTest (start , gpuUpgradeTest )
273
276
target := upgCtx .Versions [1 ].Version .String ()
274
- framework .ExpectNoError (masterUpgrade (f , target ))
277
+ framework .ExpectNoError (masterUpgrade (f , target , nil ))
275
278
framework .ExpectNoError (checkMasterVersion (f .ClientSet , target ))
276
279
}
277
280
runUpgradeSuite (f , gpuUpgradeTests , testFrameworks , testSuite , upgrades .MasterUpgrade , upgradeFunc )
@@ -289,7 +292,7 @@ var _ = SIGDescribe("gpu Upgrade [Feature:GPUUpgrade]", func() {
289
292
start := time .Now ()
290
293
defer finalizeUpgradeTest (start , gpuUpgradeTest )
291
294
target := upgCtx .Versions [1 ].Version .String ()
292
- framework .ExpectNoError (masterUpgrade (f , target ))
295
+ framework .ExpectNoError (masterUpgrade (f , target , nil ))
293
296
framework .ExpectNoError (checkMasterVersion (f .ClientSet , target ))
294
297
framework .ExpectNoError (nodeUpgrade (f , target , * upgradeImage ))
295
298
framework .ExpectNoError (checkNodesVersions (f .ClientSet , target ))
@@ -311,7 +314,7 @@ var _ = SIGDescribe("gpu Upgrade [Feature:GPUUpgrade]", func() {
311
314
target := upgCtx .Versions [1 ].Version .String ()
312
315
framework .ExpectNoError (nodeUpgrade (f , target , * upgradeImage ))
313
316
framework .ExpectNoError (checkNodesVersions (f .ClientSet , target ))
314
- framework .ExpectNoError (masterUpgrade (f , target ))
317
+ framework .ExpectNoError (masterUpgrade (f , target , nil ))
315
318
framework .ExpectNoError (checkMasterVersion (f .ClientSet , target ))
316
319
}
317
320
runUpgradeSuite (f , gpuUpgradeTests , testFrameworks , testSuite , upgrades .ClusterUpgrade , upgradeFunc )
@@ -337,7 +340,7 @@ var _ = ginkgo.Describe("[sig-apps] stateful Upgrade [Feature:StatefulUpgrade]",
337
340
start := time .Now ()
338
341
defer finalizeUpgradeTest (start , statefulUpgradeTest )
339
342
target := upgCtx .Versions [1 ].Version .String ()
340
- framework .ExpectNoError (masterUpgrade (f , target ))
343
+ framework .ExpectNoError (masterUpgrade (f , target , nil ))
341
344
framework .ExpectNoError (checkMasterVersion (f .ClientSet , target ))
342
345
framework .ExpectNoError (nodeUpgrade (f , target , * upgradeImage ))
343
346
framework .ExpectNoError (checkNodesVersions (f .ClientSet , target ))
@@ -410,6 +413,33 @@ var _ = SIGDescribe("kube-proxy migration [Feature:KubeProxyDaemonSetMigration]"
410
413
})
411
414
})
412
415
416
+ var _ = SIGDescribe ("[sig-auth] ServiceAccount admission controller migration [Feature:BoundServiceAccountTokenVolume]" , func () {
417
+ f := framework .NewDefaultFramework ("serviceaccount-admission-controller-migration" )
418
+
419
+ testFrameworks := createUpgradeFrameworks (serviceaccountAdmissionControllerMigrationTests )
420
+ ginkgo .Describe ("master upgrade" , func () {
421
+ ginkgo .It ("should maintain a functioning cluster" , func () {
422
+ upgCtx , err := getUpgradeContext (f .ClientSet .Discovery (), * upgradeTarget )
423
+ framework .ExpectNoError (err )
424
+
425
+ testSuite := & junit.TestSuite {Name : "ServiceAccount admission controller migration" }
426
+ serviceaccountAdmissionControllerMigrationTest := & junit.TestCase {
427
+ Name : "[sig-auth] serviceaccount-admission-controller-migration" ,
428
+ Classname : "upgrade_tests" ,
429
+ }
430
+ testSuite .TestCases = append (testSuite .TestCases , serviceaccountAdmissionControllerMigrationTest )
431
+
432
+ upgradeFunc := func () {
433
+ start := time .Now ()
434
+ defer finalizeUpgradeTest (start , serviceaccountAdmissionControllerMigrationTest )
435
+ target := upgCtx .Versions [1 ].Version .String ()
436
+ framework .ExpectNoError (masterUpgrade (f , target , []string {"KUBE_FEATURE_GATES=BoundServiceAccountTokenVolume=true" }))
437
+ }
438
+ runUpgradeSuite (f , serviceaccountAdmissionControllerMigrationTests , testFrameworks , testSuite , upgrades .MasterUpgrade , upgradeFunc )
439
+ })
440
+ })
441
+ })
442
+
413
443
type chaosMonkeyAdapter struct {
414
444
test upgrades.Test
415
445
testReport * junit.TestCase
0 commit comments