1
16
17 package gcp
18
19 import (
20 "context"
21
22 "k8s.io/kubernetes/test/e2e/cloud/gcp/common"
23 "k8s.io/kubernetes/test/e2e/feature"
24 "k8s.io/kubernetes/test/e2e/framework"
25 "k8s.io/kubernetes/test/e2e/upgrades"
26 "k8s.io/kubernetes/test/e2e/upgrades/apps"
27 "k8s.io/kubernetes/test/e2e/upgrades/autoscaling"
28 "k8s.io/kubernetes/test/e2e/upgrades/network"
29 "k8s.io/kubernetes/test/e2e/upgrades/node"
30 "k8s.io/kubernetes/test/e2e/upgrades/storage"
31 "k8s.io/kubernetes/test/utils/junit"
32 admissionapi "k8s.io/pod-security-admission/api"
33
34 "github.com/onsi/ginkgo/v2"
35 )
36
37
38
39
40
41 var upgradeTests = []upgrades.Test{
42 &apps.DaemonSetUpgradeTest{},
43 &apps.DeploymentUpgradeTest{},
44 &apps.JobUpgradeTest{},
45 &apps.ReplicaSetUpgradeTest{},
46 &apps.StatefulSetUpgradeTest{},
47 &autoscaling.HPAUpgradeTest{},
48 &network.ServiceUpgradeTest{},
49 &node.AppArmorUpgradeTest{},
50 &node.ConfigMapUpgradeTest{},
51 &node.SecretUpgradeTest{},
52 &storage.PersistentVolumeUpgradeTest{},
53 &storage.VolumeModeDowngradeTest{},
54 }
55
56 var _ = SIGDescribe("Upgrade", feature.Upgrade, func() {
57 f := framework.NewDefaultFramework("cluster-upgrade")
58 f.NamespacePodSecurityLevel = admissionapi.LevelPrivileged
59 testFrameworks := upgrades.CreateUpgradeFrameworks(upgradeTests)
60
61
62
63 ginkgo.Describe("master upgrade", func() {
64 f.It("should maintain a functioning cluster", feature.MasterUpgrade, func(ctx context.Context) {
65 upgCtx, err := common.GetUpgradeContext(f.ClientSet.Discovery())
66 framework.ExpectNoError(err)
67
68 testSuite := &junit.TestSuite{Name: "Master upgrade"}
69 masterUpgradeTest := &junit.TestCase{
70 Name: "[sig-cloud-provider-gcp] master-upgrade",
71 Classname: "upgrade_tests",
72 }
73 testSuite.TestCases = append(testSuite.TestCases, masterUpgradeTest)
74
75 upgradeFunc := common.ControlPlaneUpgradeFunc(f, upgCtx, masterUpgradeTest, nil)
76 upgrades.RunUpgradeSuite(ctx, upgCtx, upgradeTests, testFrameworks, testSuite, upgrades.MasterUpgrade, upgradeFunc)
77 })
78 })
79
80 ginkgo.Describe("cluster upgrade", func() {
81 f.It("should maintain a functioning cluster", feature.ClusterUpgrade, func(ctx context.Context) {
82 upgCtx, err := common.GetUpgradeContext(f.ClientSet.Discovery())
83 framework.ExpectNoError(err)
84
85 testSuite := &junit.TestSuite{Name: "Cluster upgrade"}
86 clusterUpgradeTest := &junit.TestCase{Name: "[sig-cloud-provider-gcp] cluster-upgrade", Classname: "upgrade_tests"}
87 testSuite.TestCases = append(testSuite.TestCases, clusterUpgradeTest)
88
89 upgradeFunc := common.ClusterUpgradeFunc(f, upgCtx, clusterUpgradeTest, nil, nil)
90 upgrades.RunUpgradeSuite(ctx, upgCtx, upgradeTests, testFrameworks, testSuite, upgrades.ClusterUpgrade, upgradeFunc)
91 })
92 })
93 })
94
95 var _ = SIGDescribe("Downgrade", feature.Downgrade, func() {
96 f := framework.NewDefaultFramework("cluster-downgrade")
97 f.NamespacePodSecurityLevel = admissionapi.LevelPrivileged
98 testFrameworks := upgrades.CreateUpgradeFrameworks(upgradeTests)
99
100 ginkgo.Describe("cluster downgrade", func() {
101 f.It("should maintain a functioning cluster", feature.ClusterDowngrade, func(ctx context.Context) {
102 upgCtx, err := common.GetUpgradeContext(f.ClientSet.Discovery())
103 framework.ExpectNoError(err)
104
105 testSuite := &junit.TestSuite{Name: "Cluster downgrade"}
106 clusterDowngradeTest := &junit.TestCase{Name: "[sig-cloud-provider-gcp] cluster-downgrade", Classname: "upgrade_tests"}
107 testSuite.TestCases = append(testSuite.TestCases, clusterDowngradeTest)
108
109 upgradeFunc := common.ClusterDowngradeFunc(f, upgCtx, clusterDowngradeTest, nil, nil)
110 upgrades.RunUpgradeSuite(ctx, upgCtx, upgradeTests, testFrameworks, testSuite, upgrades.ClusterUpgrade, upgradeFunc)
111 })
112 })
113 })
114
View as plain text