From 654fab3d29e28385965c5dd029733545c2551b2b Mon Sep 17 00:00:00 2001 From: Abhishek Kumar Date: Thu, 26 Mar 2020 10:59:18 +0530 Subject: [PATCH 1/3] changed template and binaries iso to public links Signed-off-by: Abhishek Kumar --- .../smoke/test_kubernetes_clusters.py | 23 +++++++++---------- .../test_kubernetes_supported_versions.py | 2 +- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/test/integration/smoke/test_kubernetes_clusters.py b/test/integration/smoke/test_kubernetes_clusters.py index 021a7490ff2b..04d5fcf89fb0 100644 --- a/test/integration/smoke/test_kubernetes_clusters.py +++ b/test/integration/smoke/test_kubernetes_clusters.py @@ -72,32 +72,32 @@ def setUpClass(cls): cls.kubernetes_version_ids = [] if cls.setup_failed == False: try: - cls.kuberetes_version_1 = cls.addKubernetesSupportedVersion('1.14.9', 'http://staging.yadav.xyz/cks/binaries-iso/setup-1.14.9.iso') + cls.kuberetes_version_1 = cls.addKubernetesSupportedVersion('1.14.9', 'http://download.cloudstack.org/cks/setup-1.14.9.iso') cls.kubernetes_version_ids.append(cls.kuberetes_version_1.id) except Exception as e: cls.setup_failed = True - cls.debug("Failed to get Kubernetes version ISO in ready state, http://staging.yadav.xyz/cks/binaries-iso/setup-1.14.9.iso, %s" % e) + cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.14.9.iso, %s" % e) if cls.setup_failed == False: try: - cls.kuberetes_version_2 = cls.addKubernetesSupportedVersion('1.15.0', 'http://staging.yadav.xyz/cks/binaries-iso/setup-1.15.0.iso') + cls.kuberetes_version_2 = cls.addKubernetesSupportedVersion('1.15.0', 'http://download.cloudstack.org/cks/setup-1.15.0.iso') cls.kubernetes_version_ids.append(cls.kuberetes_version_2.id) except Exception as e: cls.setup_failed = True - cls.debug("Failed to get Kubernetes version ISO in ready state, http://staging.yadav.xyz/cks/binaries-iso/setup-1.15.0.iso, %s" % e) + cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.15.0.iso, %s" % e) if cls.setup_failed == False: try: - cls.kuberetes_version_3 = cls.addKubernetesSupportedVersion('1.16.0', 'http://staging.yadav.xyz/cks/binaries-iso/setup-1.16.0.iso') + cls.kuberetes_version_3 = cls.addKubernetesSupportedVersion('1.16.0', 'http://download.cloudstack.org/cks/setup-1.16.0.iso') cls.kubernetes_version_ids.append(cls.kuberetes_version_3.id) except Exception as e: cls.setup_failed = True - cls.debug("Failed to get Kubernetes version ISO in ready state, http://staging.yadav.xyz/cks/binaries-iso/setup-1.16.0.is, %s" % e) + cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.16.0.iso, %s" % e) if cls.setup_failed == False: try: - cls.kuberetes_version_4 = cls.addKubernetesSupportedVersion('1.16.3', 'http://staging.yadav.xyz/cks/binaries-iso/setup-1.16.3.iso') + cls.kuberetes_version_4 = cls.addKubernetesSupportedVersion('1.16.3', 'http://download.cloudstack.org/cks/setup-1.16.3.iso') cls.kubernetes_version_ids.append(cls.kuberetes_version_4.id) except Exception as e: cls.setup_failed = True - cls.debug("Failed to get Kubernetes version ISO in ready state, http://staging.yadav.xyz/cks/binaries-iso/setup-1.16.3.is, %s" % e) + cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.16.3.iso, %s" % e) cks_template_data = { "name": "Kubernetes-Service-Template", @@ -105,18 +105,17 @@ def setUpClass(cls): "format": "qcow2", "hypervisor": "kvm", "ostype": "CoreOS", - "url": "http://staging.yadav.xyz/cks/templates/coreos_production_cloudstack_image-kvm.qcow2.bz2", + "url": "http://dl.openvm.eu/cloudstack/coreos/x86_64/coreos_production_cloudstack_image-kvm.qcow2.bz2", "ispublic": "True", "isextractable": "True" } - # "http://dl.openvm.eu/cloudstack/coreos/x86_64/coreos_production_cloudstack_image-kvm.qcow2.bz2" cks_template_data_details = [] if cls.hypervisor.lower() == "vmware": - cks_template_data["url"] = "http://staging.yadav.xyz/cks/templates/coreos_production_cloudstack_image-vmware.ova" # "http://dl.openvm.eu/cloudstack/coreos/x86_64/coreos_production_cloudstack_image-vmware.ova" + cks_template_data["url"] = "http://dl.openvm.eu/cloudstack/coreos/x86_64/coreos_production_cloudstack_image-vmware.ova" cks_template_data["format"] = "OVA" cks_template_data_details = [{"keyboard":"us","nicAdapter":"Vmxnet3","rootDiskController":"pvscsi"}] elif cls.hypervisor.lower() == "xenserver": - cks_template_data["url"] = "http://staging.yadav.xyz/cks/templates/coreos_production_cloudstack_image-xen.vhd.bz2" # "http://dl.openvm.eu/cloudstack/coreos/x86_64/coreos_production_cloudstack_image-xen.vhd.bz2" + cks_template_data["url"] = "http://dl.openvm.eu/cloudstack/coreos/x86_64/coreos_production_cloudstack_image-xen.vhd.bz2" cks_template_data["format"] = "VHD" elif cls.hypervisor.lower() == "kvm": cks_template_data["requireshvm"] = "True" diff --git a/test/integration/smoke/test_kubernetes_supported_versions.py b/test/integration/smoke/test_kubernetes_supported_versions.py index 3d699e4b6766..f1b54bfba863 100644 --- a/test/integration/smoke/test_kubernetes_supported_versions.py +++ b/test/integration/smoke/test_kubernetes_supported_versions.py @@ -44,7 +44,7 @@ def setUpClass(cls): 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://staging.yadav.xyz/cks/binaries-iso/setup-1.16.3.iso' + cls.kubernetes_version_iso_url = 'http://download.cloudstack.org/cks/setup-1.16.3.iso' cls.initial_configuration_cks_enabled = Configurations.list(cls.apiclient, name="cloud.kubernetes.service.enabled")[0].value From feb2c0ced67cbb40302486b44d3fc8c45c31c71b Mon Sep 17 00:00:00 2001 From: Abhishek Kumar Date: Thu, 30 Apr 2020 01:35:51 +0530 Subject: [PATCH 2/3] iso state check and timeout fixes refactoring Signed-off-by: Abhishek Kumar --- .../smoke/test_kubernetes_clusters.py | 69 +++++++++---------- .../test_kubernetes_supported_versions.py | 15 ++-- 2 files changed, 38 insertions(+), 46 deletions(-) diff --git a/test/integration/smoke/test_kubernetes_clusters.py b/test/integration/smoke/test_kubernetes_clusters.py index 04d5fcf89fb0..64578790b58a 100644 --- a/test/integration/smoke/test_kubernetes_clusters.py +++ b/test/integration/smoke/test_kubernetes_clusters.py @@ -72,29 +72,29 @@ def setUpClass(cls): cls.kubernetes_version_ids = [] if cls.setup_failed == False: try: - cls.kuberetes_version_1 = cls.addKubernetesSupportedVersion('1.14.9', 'http://download.cloudstack.org/cks/setup-1.14.9.iso') - cls.kubernetes_version_ids.append(cls.kuberetes_version_1.id) + cls.kubernetes_version_1 = cls.addKubernetesSupportedVersion('1.14.9', 'http://download.cloudstack.org/cks/setup-1.14.9.iso') + cls.kubernetes_version_ids.append(cls.kubernetes_version_1.id) except Exception as e: cls.setup_failed = True cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.14.9.iso, %s" % e) if cls.setup_failed == False: try: - cls.kuberetes_version_2 = cls.addKubernetesSupportedVersion('1.15.0', 'http://download.cloudstack.org/cks/setup-1.15.0.iso') - cls.kubernetes_version_ids.append(cls.kuberetes_version_2.id) + cls.kubernetes_version_2 = cls.addKubernetesSupportedVersion('1.15.0', 'http://download.cloudstack.org/cks/setup-1.15.0.iso') + cls.kubernetes_version_ids.append(cls.kubernetes_version_2.id) except Exception as e: cls.setup_failed = True cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.15.0.iso, %s" % e) if cls.setup_failed == False: try: - cls.kuberetes_version_3 = cls.addKubernetesSupportedVersion('1.16.0', 'http://download.cloudstack.org/cks/setup-1.16.0.iso') - cls.kubernetes_version_ids.append(cls.kuberetes_version_3.id) + cls.kubernetes_version_3 = cls.addKubernetesSupportedVersion('1.16.0', 'http://download.cloudstack.org/cks/setup-1.16.0.iso') + cls.kubernetes_version_ids.append(cls.kubernetes_version_3.id) except Exception as e: cls.setup_failed = True cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.16.0.iso, %s" % e) if cls.setup_failed == False: try: - cls.kuberetes_version_4 = cls.addKubernetesSupportedVersion('1.16.3', 'http://download.cloudstack.org/cks/setup-1.16.3.iso') - cls.kubernetes_version_ids.append(cls.kuberetes_version_4.id) + cls.kubernetes_version_4 = cls.addKubernetesSupportedVersion('1.16.3', 'http://download.cloudstack.org/cks/setup-1.16.3.iso') + cls.kubernetes_version_ids.append(cls.kubernetes_version_4.id) except Exception as e: cls.setup_failed = True cls.debug("Failed to get Kubernetes version ISO in ready state, http://download.cloudstack.org/cks/setup-1.16.3.iso, %s" % e) @@ -233,7 +233,7 @@ def isManagementUp(cls): @classmethod def waitForTemplateReadyState(cls, template_id, retries=30, interval=30): """Check if template download will finish""" - while retries > -1: + while retries > 0: time.sleep(interval) template_response = Template.list( cls.apiclient, @@ -255,25 +255,20 @@ def waitForTemplateReadyState(cls, template_id, retries=30, interval=30): raise Exception("Template download timed out") @classmethod - def waitForKubernetesSupportedVersionIsoReadyState(cls, version_id, retries=20, interval=30): + def waitForKubernetesSupportedVersionIsoReadyState(cls, version_id, retries=40, interval=30): """Check if Kubernetes supported version ISO is in Ready state""" - while retries > -1: + while retries > 0: time.sleep(interval) list_versions_response = cls.listKubernetesSupportedVersion(version_id) if not hasattr(list_versions_response, 'isostate') or not list_versions_response or not list_versions_response.isostate: retries = retries - 1 continue - if 'Creating' == list_versions_response.isostate: - retries = retries - 1 - elif 'Ready' == list_versions_response.isostate: + if 'Ready' == list_versions_response.isostate: return elif 'Failed' == list_versions_response.isostate: raise Exception( "Failed to download template: status - %s" % template.status) - else: - raise Exception( - "Failed to download Kubernetes supported version ISO: status - %s" % - list_versions_response.isostate) + retries = retries - 1 raise Exception("Kubernetes supported version Ready state timed out") @classmethod @@ -336,9 +331,9 @@ def test_01_deploy_kubernetes_cluster(self): name = 'testcluster-' + random_gen() self.debug("Creating for Kubernetes cluster with name %s" % name) - cluster_response = self.createKubernetesCluster(name, self.kuberetes_version_2.id) + cluster_response = self.createKubernetesCluster(name, self.kubernetes_version_2.id) - self.verifyKubernetesCluster(cluster_response, name, self.kuberetes_version_2.id) + self.verifyKubernetesCluster(cluster_response, name, self.kubernetes_version_2.id) self.debug("Kubernetes cluster with ID: %s successfully deployed, now stopping it" % cluster_response.id) @@ -367,9 +362,9 @@ def test_02_deploy_kubernetes_ha_cluster(self): name = 'testcluster-' + random_gen() self.debug("Creating for Kubernetes cluster with name %s" % name) - cluster_response = self.createKubernetesCluster(name, self.kuberetes_version_3.id, 1, 2) + cluster_response = self.createKubernetesCluster(name, self.kubernetes_version_3.id, 1, 2) - self.verifyKubernetesCluster(cluster_response, name, self.kuberetes_version_3.id, 1, 2) + self.verifyKubernetesCluster(cluster_response, name, self.kubernetes_version_3.id, 1, 2) self.debug("Kubernetes cluster with ID: %s successfully deployed, now deleting it" % cluster_response.id) @@ -395,7 +390,7 @@ def test_03_deploy_invalid_kubernetes_ha_cluster(self): self.debug("Creating for Kubernetes cluster with name %s" % name) try: - cluster_response = self.createKubernetesCluster(name, self.kuberetes_version_2.id, 1, 2) + cluster_response = self.createKubernetesCluster(name, self.kubernetes_version_2.id, 1, 2) self.debug("Invslid CKS Kubernetes HA cluster deployed with ID: %s. Deleting it and failing test." % cluster_response.id) self.deleteKubernetesCluster(cluster_response.id) self.fail("HA Kubernetes cluster deployed with Kubernetes supported version below version 1.16.0. Must be an error.") @@ -420,19 +415,19 @@ def test_04_deploy_and_upgrade_kubernetes_cluster(self): name = 'testcluster-' + random_gen() self.debug("Creating for Kubernetes cluster with name %s" % name) - cluster_response = self.createKubernetesCluster(name, self.kuberetes_version_2.id) + cluster_response = self.createKubernetesCluster(name, self.kubernetes_version_2.id) - self.verifyKubernetesCluster(cluster_response, name, self.kuberetes_version_2.id) + self.verifyKubernetesCluster(cluster_response, name, self.kubernetes_version_2.id) self.debug("Kubernetes cluster with ID: %s successfully deployed, now upgrading it" % cluster_response.id) try: - cluster_response = self.upgradeKubernetesCluster(cluster_response.id, self.kuberetes_version_3.id) + cluster_response = self.upgradeKubernetesCluster(cluster_response.id, self.kubernetes_version_3.id) except Exception as e: self.deleteKubernetesCluster(cluster_response.id) self.fail("Failed to upgrade Kubernetes cluster due to: %s" % e) - self.verifyKubernetesClusterUpgrade(cluster_response, self.kuberetes_version_3.id) + self.verifyKubernetesClusterUpgrade(cluster_response, self.kubernetes_version_3.id) self.debug("Kubernetes cluster with ID: %s successfully upgraded, now deleting it" % cluster_response.id) @@ -459,19 +454,19 @@ def test_05_deploy_and_upgrade_kubernetes_ha_cluster(self): name = 'testcluster-' + random_gen() self.debug("Creating for Kubernetes cluster with name %s" % name) - cluster_response = self.createKubernetesCluster(name, self.kuberetes_version_3.id, 1, 2) + cluster_response = self.createKubernetesCluster(name, self.kubernetes_version_3.id, 1, 2) - self.verifyKubernetesCluster(cluster_response, name, self.kuberetes_version_3.id, 1, 2) + self.verifyKubernetesCluster(cluster_response, name, self.kubernetes_version_3.id, 1, 2) self.debug("Kubernetes cluster with ID: %s successfully deployed, now upgrading it" % cluster_response.id) try: - cluster_response = self.upgradeKubernetesCluster(cluster_response.id, self.kuberetes_version_4.id) + cluster_response = self.upgradeKubernetesCluster(cluster_response.id, self.kubernetes_version_4.id) except Exception as e: self.deleteKubernetesCluster(cluster_response.id) self.fail("Failed to upgrade Kubernetes HA cluster due to: %s" % e) - self.verifyKubernetesClusterUpgrade(cluster_response, self.kuberetes_version_4.id) + self.verifyKubernetesClusterUpgrade(cluster_response, self.kubernetes_version_4.id) self.debug("Kubernetes cluster with ID: %s successfully upgraded, now deleting it" % cluster_response.id) @@ -497,15 +492,15 @@ def test_06_deploy_and_invalid_upgrade_kubernetes_cluster(self): name = 'testcluster-' + random_gen() self.debug("Creating for Kubernetes cluster with name %s" % name) - cluster_response = self.createKubernetesCluster(name, self.kuberetes_version_2.id) + cluster_response = self.createKubernetesCluster(name, self.kubernetes_version_2.id) - self.verifyKubernetesCluster(cluster_response, name, self.kuberetes_version_2.id) + self.verifyKubernetesCluster(cluster_response, name, self.kubernetes_version_2.id) self.debug("Kubernetes cluster with ID: %s successfully deployed, now scaling it" % cluster_response.id) try: - cluster_response = self.upgradeKubernetesCluster(cluster_response.id, self.kuberetes_version_1.id) - self.debug("Invalid CKS Kubernetes HA cluster deployed with ID: %s. Deleting it and failing test." % kuberetes_version_1.id) + cluster_response = self.upgradeKubernetesCluster(cluster_response.id, self.kubernetes_version_1.id) + self.debug("Invalid CKS Kubernetes HA cluster deployed with ID: %s. Deleting it and failing test." % kubernetes_version_1.id) self.deleteKubernetesCluster(cluster_response.id) self.fail("Kubernetes cluster upgraded to a lower Kubernetes supported version. Must be an error.") except Exception as e: @@ -536,9 +531,9 @@ def test_07_deploy_and_scale_kubernetes_cluster(self): name = 'testcluster-' + random_gen() self.debug("Creating for Kubernetes cluster with name %s" % name) - cluster_response = self.createKubernetesCluster(name, self.kuberetes_version_2.id) + cluster_response = self.createKubernetesCluster(name, self.kubernetes_version_2.id) - self.verifyKubernetesCluster(cluster_response, name, self.kuberetes_version_2.id) + self.verifyKubernetesCluster(cluster_response, name, self.kubernetes_version_2.id) self.debug("Kubernetes cluster with ID: %s successfully deployed, now upscaling it" % cluster_response.id) diff --git a/test/integration/smoke/test_kubernetes_supported_versions.py b/test/integration/smoke/test_kubernetes_supported_versions.py index f1b54bfba863..ff2b7f737708 100644 --- a/test/integration/smoke/test_kubernetes_supported_versions.py +++ b/test/integration/smoke/test_kubernetes_supported_versions.py @@ -258,21 +258,18 @@ def deleteKubernetesSupportedVersion(self, versionId, deleteIso): response = self.apiclient.deleteKubernetesSupportedVersion(deleteKubernetesSupportedVersionCmd) return response - def waitForKubernetesSupportedVersionIsoReadyState(self, version_id, retries=20, interval=30): + def waitForKubernetesSupportedVersionIsoReadyState(self, version_id, retries=40, interval=30): """Check if Kubernetes supported version ISO is in Ready state""" - while retries > -1: + while retries > 0: time.sleep(interval) list_versions_response = self.listKubernetesSupportedVersion(version_id) if not hasattr(list_versions_response, 'isostate') or not list_versions_response or not list_versions_response.isostate: retries = retries - 1 continue - if 'Creating' == list_versions_response.isostate: - retries = retries - 1 - elif 'Ready' == list_versions_response.isostate: + if 'Ready' == list_versions_response.isostate: return - else: - raise Exception( - "Failed to download Kubernetes supported version ISO: status - %s" % - list_versions_response.isostate) + elif 'Failed' == list_versions_response.isostate: + raise Exception( "Failed to download template: status - %s" % template.status) + retries = retries - 1 raise Exception("Kubernetes supported version Ready state timed out") From 8abf7f7cd01ab392446fc1c7f5062ec9d92346ed Mon Sep 17 00:00:00 2001 From: Abhishek Kumar Date: Sun, 3 May 2020 11:36:03 +0530 Subject: [PATCH 3/3] changed timeouts Signed-off-by: Abhishek Kumar --- test/integration/smoke/test_kubernetes_clusters.py | 4 ++-- test/integration/smoke/test_kubernetes_supported_versions.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/integration/smoke/test_kubernetes_clusters.py b/test/integration/smoke/test_kubernetes_clusters.py index 64578790b58a..492c9702a9d5 100644 --- a/test/integration/smoke/test_kubernetes_clusters.py +++ b/test/integration/smoke/test_kubernetes_clusters.py @@ -231,7 +231,7 @@ def isManagementUp(cls): return False @classmethod - def waitForTemplateReadyState(cls, template_id, retries=30, interval=30): + def waitForTemplateReadyState(cls, template_id, retries=30, interval=60): """Check if template download will finish""" while retries > 0: time.sleep(interval) @@ -255,7 +255,7 @@ def waitForTemplateReadyState(cls, template_id, retries=30, interval=30): raise Exception("Template download timed out") @classmethod - def waitForKubernetesSupportedVersionIsoReadyState(cls, version_id, retries=40, interval=30): + def waitForKubernetesSupportedVersionIsoReadyState(cls, version_id, retries=30, interval=60): """Check if Kubernetes supported version ISO is in Ready state""" while retries > 0: diff --git a/test/integration/smoke/test_kubernetes_supported_versions.py b/test/integration/smoke/test_kubernetes_supported_versions.py index ff2b7f737708..b2202053ebfc 100644 --- a/test/integration/smoke/test_kubernetes_supported_versions.py +++ b/test/integration/smoke/test_kubernetes_supported_versions.py @@ -258,7 +258,7 @@ def deleteKubernetesSupportedVersion(self, versionId, deleteIso): response = self.apiclient.deleteKubernetesSupportedVersion(deleteKubernetesSupportedVersionCmd) return response - def waitForKubernetesSupportedVersionIsoReadyState(self, version_id, retries=40, interval=30): + def waitForKubernetesSupportedVersionIsoReadyState(self, version_id, retries=30, interval=60): """Check if Kubernetes supported version ISO is in Ready state""" while retries > 0: