1
2
3
4
19
20 package node
21
22 import (
23 "context"
24
25 "k8s.io/kubernetes/test/e2e/cloud/gcp/common"
26 "k8s.io/kubernetes/test/e2e/feature"
27 "k8s.io/kubernetes/test/e2e/framework"
28 "k8s.io/kubernetes/test/e2e/upgrades"
29 "k8s.io/kubernetes/test/e2e/upgrades/node"
30 "k8s.io/kubernetes/test/utils/junit"
31 admissionapi "k8s.io/pod-security-admission/api"
32
33 "github.com/onsi/ginkgo/v2"
34 )
35
36 var upgradeTests = []upgrades.Test{
37 &node.NvidiaGPUUpgradeTest{},
38 }
39
40 var _ = SIGDescribe("gpu Upgrade", feature.GPUUpgrade, func() {
41 f := framework.NewDefaultFramework("gpu-upgrade")
42 f.NamespacePodSecurityLevel = admissionapi.LevelPrivileged
43 testFrameworks := upgrades.CreateUpgradeFrameworks(upgradeTests)
44
45 ginkgo.Describe("master upgrade", func() {
46 f.It("should NOT disrupt gpu pod", feature.GPUMasterUpgrade, func(ctx context.Context) {
47 upgCtx, err := common.GetUpgradeContext(f.ClientSet.Discovery())
48 framework.ExpectNoError(err)
49
50 testSuite := &junit.TestSuite{Name: "GPU master upgrade"}
51 gpuUpgradeTest := &junit.TestCase{Name: "[sig-node] gpu-master-upgrade", Classname: "upgrade_tests"}
52 testSuite.TestCases = append(testSuite.TestCases, gpuUpgradeTest)
53
54 upgradeFunc := common.ControlPlaneUpgradeFunc(f, upgCtx, gpuUpgradeTest, nil)
55 upgrades.RunUpgradeSuite(ctx, upgCtx, upgradeTests, testFrameworks, testSuite, upgrades.MasterUpgrade, upgradeFunc)
56 })
57 })
58 ginkgo.Describe("cluster upgrade", func() {
59 f.It("should be able to run gpu pod after upgrade", feature.GPUClusterUpgrade, func(ctx context.Context) {
60 upgCtx, err := common.GetUpgradeContext(f.ClientSet.Discovery())
61 framework.ExpectNoError(err)
62
63 testSuite := &junit.TestSuite{Name: "GPU cluster upgrade"}
64 gpuUpgradeTest := &junit.TestCase{Name: "[sig-node] gpu-cluster-upgrade", Classname: "upgrade_tests"}
65 testSuite.TestCases = append(testSuite.TestCases, gpuUpgradeTest)
66
67 upgradeFunc := common.ClusterUpgradeFunc(f, upgCtx, gpuUpgradeTest, nil, nil)
68 upgrades.RunUpgradeSuite(ctx, upgCtx, upgradeTests, testFrameworks, testSuite, upgrades.ClusterUpgrade, upgradeFunc)
69 })
70 })
71 ginkgo.Describe("cluster downgrade", func() {
72 f.It("should be able to run gpu pod after downgrade", feature.GPUClusterDowngrade, func(ctx context.Context) {
73 upgCtx, err := common.GetUpgradeContext(f.ClientSet.Discovery())
74 framework.ExpectNoError(err)
75
76 testSuite := &junit.TestSuite{Name: "GPU cluster downgrade"}
77 gpuDowngradeTest := &junit.TestCase{Name: "[sig-node] gpu-cluster-downgrade", Classname: "upgrade_tests"}
78 testSuite.TestCases = append(testSuite.TestCases, gpuDowngradeTest)
79
80 upgradeFunc := common.ClusterDowngradeFunc(f, upgCtx, gpuDowngradeTest, nil, nil)
81 upgrades.RunUpgradeSuite(ctx, upgCtx, upgradeTests, testFrameworks, testSuite, upgrades.ClusterUpgrade, upgradeFunc)
82 })
83 })
84 })
85
View as plain text