This is an automated email from the ASF dual-hosted git repository.

weizhou pushed a commit to branch 4.18
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.18 by this push:
     new b32ba953cff test: upgrade kubernetes versions to 1.25.0/1.26.0 (#7685)
b32ba953cff is described below

commit b32ba953cffa729f326f60285c78637be28af888
Author: Wei Zhou <[email protected]>
AuthorDate: Thu Aug 10 15:48:08 2023 +0800

    test: upgrade kubernetes versions to 1.25.0/1.26.0 (#7685)
    
    * test: upgrade versions to 1.25.0/1.26.0
    
    * PR7685: move settings to test_data.py
---
 test/integration/smoke/test_kubernetes_clusters.py | 41 ++++++++++++----------
 .../smoke/test_kubernetes_supported_versions.py    |  3 +-
 tools/marvin/marvin/config/test_data.py            | 15 ++++++++
 3 files changed, 39 insertions(+), 20 deletions(-)

diff --git a/test/integration/smoke/test_kubernetes_clusters.py 
b/test/integration/smoke/test_kubernetes_clusters.py
index c227e7fbfa7..e53f71871d8 100644
--- a/test/integration/smoke/test_kubernetes_clusters.py
+++ b/test/integration/smoke/test_kubernetes_clusters.py
@@ -87,6 +87,9 @@ class TestKubernetesCluster(cloudstackTestCase):
         cls.kubernetes_version_ids = []
         cls.vpcAllowAllAclDetailsMap = {}
 
+        cls.k8s_version_from = 
cls.services["cks_kubernetes_version_upgrade_from"]
+        cls.k8s_version_to = cls.services["cks_kubernetes_version_upgrade_to"]
+
         if cls.hypervisorNotSupported == False:
             cls.endpoint_url = Configurations.list(cls.apiclient, 
name="endpoint.url")[0].value
             if "localhost" in cls.endpoint_url:
@@ -105,20 +108,20 @@ class TestKubernetesCluster(cloudstackTestCase):
 
             if cls.setup_failed == False:
                 try:
-                    cls.kubernetes_version_1_23_3 = 
cls.addKubernetesSupportedVersion(cls.services["cks_kubernetes_versions"]["1.23.3"])
-                    
cls.kubernetes_version_ids.append(cls.kubernetes_version_1_23_3.id)
+                    cls.kubernetes_version_v1 = 
cls.addKubernetesSupportedVersion(cls.services["cks_kubernetes_versions"][cls.k8s_version_from])
+                    
cls.kubernetes_version_ids.append(cls.kubernetes_version_v1.id)
                 except Exception as e:
                     cls.setup_failed = True
                     cls.debug("Failed to get Kubernetes version ISO in ready 
state, version=%s, url=%s, %s" %
-                        
(cls.services["cks_kubernetes_versions"]["1.23.3"]["semanticversion"], 
cls.services["cks_kubernetes_versions"]["1.23.3"]["url"], e))
+                        
(cls.services["cks_kubernetes_versions"][cls.k8s_version_from]["semanticversion"],
 cls.services["cks_kubernetes_versions"][cls.k8s_version_from]["url"], e))
             if cls.setup_failed == False:
                 try:
-                    cls.kubernetes_version_1_24_0 = 
cls.addKubernetesSupportedVersion(cls.services["cks_kubernetes_versions"]["1.24.0"])
-                    
cls.kubernetes_version_ids.append(cls.kubernetes_version_1_24_0.id)
+                    cls.kubernetes_version_v2 = 
cls.addKubernetesSupportedVersion(cls.services["cks_kubernetes_versions"][cls.k8s_version_to])
+                    
cls.kubernetes_version_ids.append(cls.kubernetes_version_v2.id)
                 except Exception as e:
                     cls.setup_failed = True
                     cls.debug("Failed to get Kubernetes version ISO in ready 
state, version=%s, url=%s, %s" %
-                        
(cls.services["cks_kubernetes_versions"]["1.24.0"]["semanticversion"], 
cls.services["cks_kubernetes_versions"]["1.24.0"]["url"], e))
+                        
(cls.services["cks_kubernetes_versions"][cls.k8s_version_to]["semanticversion"],
 cls.services["cks_kubernetes_versions"][cls.k8s_version_to]["url"], e))
 
             if cls.setup_failed == False:
                 cks_offering_data = cls.services["cks_service_offering"]
@@ -366,20 +369,20 @@ class TestKubernetesCluster(cloudstackTestCase):
         if self.setup_failed == True:
             self.fail("Setup incomplete")
         global k8s_cluster
-        k8s_cluster = 
self.getValidKubernetesCluster(version=self.kubernetes_version_1_24_0)
+        k8s_cluster = 
self.getValidKubernetesCluster(version=self.kubernetes_version_v2)
 
         self.debug("Downgrading Kubernetes cluster with ID: %s to a lower 
version. This should fail!" % k8s_cluster.id)
 
         try:
-            k8s_cluster = self.upgradeKubernetesCluster(k8s_cluster.id, 
self.kubernetes_version_1_23_3.id)
-            self.debug("Invalid CKS Kubernetes HA cluster deployed with ID: 
%s. Deleting it and failing test." % self.kubernetes_version_1_23_3.id)
+            k8s_cluster = self.upgradeKubernetesCluster(k8s_cluster.id, 
self.kubernetes_version_v1.id)
+            self.debug("Invalid CKS Kubernetes HA cluster deployed with ID: 
%s. Deleting it and failing test." % self.kubernetes_version_v1.id)
             self.deleteKubernetesClusterAndVerify(k8s_cluster.id, False, True)
             self.fail("Kubernetes cluster downgrade to a lower Kubernetes 
supported version. Must be an error.")
         except Exception as e:
             self.debug("Upgrading Kubernetes cluster with invalid Kubernetes 
supported version check successful, API failure: %s" % e)
             self.deleteKubernetesClusterAndVerify(k8s_cluster.id, False, True)
 
-        self.verifyKubernetesClusterUpgrade(k8s_cluster, 
self.kubernetes_version_1_24_0.id)
+        self.verifyKubernetesClusterUpgrade(k8s_cluster, 
self.kubernetes_version_v2.id)
         return
 
     @attr(tags=["advanced", "smoke"], required_hardware="true")
@@ -393,17 +396,17 @@ class TestKubernetesCluster(cloudstackTestCase):
         if self.setup_failed == True:
             self.fail("Setup incomplete")
         global k8s_cluster
-        k8s_cluster = 
self.getValidKubernetesCluster(version=self.kubernetes_version_1_23_3)
+        k8s_cluster = 
self.getValidKubernetesCluster(version=self.kubernetes_version_v1)
 
         time.sleep(self.services["sleep"])
         self.debug("Upgrading Kubernetes cluster with ID: %s" % k8s_cluster.id)
         try:
-            k8s_cluster = self.upgradeKubernetesCluster(k8s_cluster.id, 
self.kubernetes_version_1_24_0.id)
+            k8s_cluster = self.upgradeKubernetesCluster(k8s_cluster.id, 
self.kubernetes_version_v2.id)
         except Exception as e:
             self.deleteKubernetesClusterAndVerify(k8s_cluster.id, False, True)
             self.fail("Failed to upgrade Kubernetes cluster due to: %s" % e)
 
-        self.verifyKubernetesClusterUpgrade(k8s_cluster, 
self.kubernetes_version_1_24_0.id)
+        self.verifyKubernetesClusterUpgrade(k8s_cluster, 
self.kubernetes_version_v2.id)
         return
 
     @attr(tags=["advanced", "smoke"], required_hardware="true")
@@ -451,7 +454,7 @@ class TestKubernetesCluster(cloudstackTestCase):
         if self.setup_failed == True:
             self.fail("Setup incomplete")
         global k8s_cluster
-        k8s_cluster = 
self.getValidKubernetesCluster(version=self.kubernetes_version_1_24_0)
+        k8s_cluster = 
self.getValidKubernetesCluster(version=self.kubernetes_version_v2)
 
         self.debug("Autoscaling Kubernetes cluster with ID: %s" % 
k8s_cluster.id)
         try:
@@ -551,17 +554,17 @@ class TestKubernetesCluster(cloudstackTestCase):
         if self.default_network:
             self.skipTest("HA cluster on shared network requires external ip 
address, skipping it")
         global k8s_cluster
-        k8s_cluster = self.getValidKubernetesCluster(1, 2, 
version=self.kubernetes_version_1_23_3)
+        k8s_cluster = self.getValidKubernetesCluster(1, 2, 
version=self.kubernetes_version_v1)
         time.sleep(self.services["sleep"])
 
         self.debug("Upgrading HA Kubernetes cluster with ID: %s" % 
k8s_cluster.id)
         try:
-            k8s_cluster = self.upgradeKubernetesCluster(k8s_cluster.id, 
self.kubernetes_version_1_24_0.id)
+            k8s_cluster = self.upgradeKubernetesCluster(k8s_cluster.id, 
self.kubernetes_version_v2.id)
         except Exception as e:
             self.deleteKubernetesClusterAndVerify(k8s_cluster.id, False, True)
             self.fail("Failed to upgrade Kubernetes HA cluster due to: %s" % e)
 
-        self.verifyKubernetesClusterUpgrade(k8s_cluster, 
self.kubernetes_version_1_24_0.id)
+        self.verifyKubernetesClusterUpgrade(k8s_cluster, 
self.kubernetes_version_v2.id)
         self.debug("Kubernetes cluster with ID: %s successfully upgraded" % 
k8s_cluster.id)
         return
 
@@ -693,7 +696,7 @@ class TestKubernetesCluster(cloudstackTestCase):
         # Does a cluster already exist ?
         if cluster == None or cluster.id == None:
             if not version:
-                version = self.kubernetes_version_1_24_0
+                version = self.kubernetes_version_v2
             self.debug("No existing cluster available, k8s_cluster: %s" % 
cluster)
             return self.createNewKubernetesCluster(version, size, 
control_nodes)
 
@@ -703,7 +706,7 @@ class TestKubernetesCluster(cloudstackTestCase):
             # Check the version only if specified
             valid = valid and cluster.kubernetesversionid == version.id
         else:
-            version = self.kubernetes_version_1_24_0
+            version = self.kubernetes_version_v2
 
         if valid:
             cluster_id = cluster.id
diff --git a/test/integration/smoke/test_kubernetes_supported_versions.py 
b/test/integration/smoke/test_kubernetes_supported_versions.py
index 229fff9d9aa..6acf7f24dcf 100644
--- a/test/integration/smoke/test_kubernetes_supported_versions.py
+++ b/test/integration/smoke/test_kubernetes_supported_versions.py
@@ -45,7 +45,8 @@ class TestKubernetesSupportedVersion(cloudstackTestCase):
         cls.services = cls.testClient.getParsedTestDataConfig()
         cls.zone = get_zone(cls.apiclient, cls.testClient.getZoneForTests())
         cls.mgtSvrDetails = cls.config.__dict__["mgtSvr"][0].__dict__
-        cls.kubernetes_version_iso_url = 
'http://download.cloudstack.org/cks/setup-1.24.0.iso'
+        cls.kubernetes_version = cls.services["cks_kubernetes_version"]
+        cls.kubernetes_version_iso_url = 
cls.services["cks_kubernetes_versions"][cls.kubernetes_version]["url"]
 
         cls.initial_configuration_cks_enabled = 
Configurations.list(cls.apiclient,
                                                                     
name="cloud.kubernetes.service.enabled")[0].value
diff --git a/tools/marvin/marvin/config/test_data.py 
b/tools/marvin/marvin/config/test_data.py
index 3a88d08574c..c4ac6008b1f 100644
--- a/tools/marvin/marvin/config/test_data.py
+++ b/tools/marvin/marvin/config/test_data.py
@@ -2248,8 +2248,23 @@ test_data = {
             "url": "http://download.cloudstack.org/cks/setup-1.24.0.iso";,
             "mincpunumber": 2,
             "minmemory": 2048
+        },
+        "1.25.0": {
+            "semanticversion": "1.25.0",
+            "url": "http://download.cloudstack.org/cks/setup-1.25.0.iso";,
+            "mincpunumber": 2,
+            "minmemory": 2048
+        },
+        "1.26.0": {
+            "semanticversion": "1.26.0",
+            "url": "http://download.cloudstack.org/cks/setup-1.26.0.iso";,
+            "mincpunumber": 2,
+            "minmemory": 2048
         }
     },
+    "cks_kubernetes_version": "1.26.0",
+    "cks_kubernetes_version_upgrade_from": "1.25.0",
+    "cks_kubernetes_version_upgrade_to": "1.26.0",
     "cks_service_offering": {
         "name": "CKS-Instance",
         "displaytext": "CKS Instance",

Reply via email to