This is an automated email from the ASF dual-hosted git repository.
nvazquez pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/main by this push:
new ee2c9ce tests: Skip test_persistent_networks if kvm and ovs (#5128)
ee2c9ce is described below
commit ee2c9cead24b490bdbcbd0d93d95e9f754fc6ac2
Author: davidjumani <[email protected]>
AuthorDate: Tue Jun 29 04:37:03 2021 +0530
tests: Skip test_persistent_networks if kvm and ovs (#5128)
* tests: Skip test_persistent_networks if kvm and ovs
* Skip if any host has ovs
* addressing comments
---
test/integration/smoke/test_persistent_network.py | 24 +++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/test/integration/smoke/test_persistent_network.py
b/test/integration/smoke/test_persistent_network.py
index cf14b04..65f37bf 100644
--- a/test/integration/smoke/test_persistent_network.py
+++ b/test/integration/smoke/test_persistent_network.py
@@ -52,6 +52,22 @@ class TestL2PersistentNetworks(cloudstackTestCase):
cls.testClient = super(TestL2PersistentNetworks,
cls).getClsTestClient()
cls.api_client = cls.testClient.getApiClient()
cls.hypervisor = cls.testClient.getHypervisorInfo()
+
+ isKVM = cls.hypervisor.lower() in ["kvm"]
+ isOVSEnabled = False
+ hostConfig =
cls.config.__dict__["zones"][0].__dict__["pods"][0].__dict__["clusters"][0].__dict__["hosts"][0].__dict__
+ if isKVM :
+ # Test only if all the hosts use OVS
+ grepCmd = 'grep "network.bridge.type=openvswitch"
/etc/cloudstack/agent/agent.properties'
+ hosts = list_hosts(cls.api_client, type='Routing',
hypervisor='kvm')
+ for host in hosts :
+ if len(SshClient(host.ipaddress, port=22,
user=hostConfig["username"],
+ passwd=hostConfig["password"]).execute(grepCmd)) != 0 :
+ isOVSEnabled = True
+ break
+ if isKVM and isOVSEnabled :
+ cls.skipTest(cls, "KVM with OVS doesn't support persistent
networks, skipping")
+
# Fill services from the external config file
cls.services = cls.testClient.getParsedTestDataConfig()
cls.hostConfig =
cls.config.__dict__["zones"][0].__dict__["pods"][0].__dict__["clusters"][0].__dict__["hosts"][
@@ -152,7 +168,7 @@ class TestL2PersistentNetworks(cloudstackTestCase):
return hosts
'''
- Verifies creation of bridge on KVM host
+ Verifies creation of bridge on KVM host
'''
def verify_bridge_creation(self, host, vlan_id):
username = self.hostConfig["username"]
@@ -186,7 +202,7 @@ class TestL2PersistentNetworks(cloudstackTestCase):
return None
'''
- Verifies creation of port group on the Distributed vSwitch or a host in a
cluster connected to
+ Verifies creation of port group on the Distributed vSwitch or a host in a
cluster connected to
a Standard vSwitch
'''
def verify_port_group_creation(self, vlan_id):
@@ -264,7 +280,7 @@ class TestL2PersistentNetworks(cloudstackTestCase):
"Failed to find port group on hosts of cluster: " +
cluster.name)
'''
- This test verifies that on creation of an Isolated network with network
offering with isPersistent flag
+ This test verifies that on creation of an Isolated network with network
offering with isPersistent flag
set to true the corresponding network resources are created without having
to deploy a VM - VR created
'''
@attr(tags=["advanced", "isolated", "persistent", "network"],
required_hardware="false")
@@ -303,7 +319,7 @@ class TestL2PersistentNetworks(cloudstackTestCase):
self.verify_network_setup_on_host_per_cluster(host.hypervisor.lower(),
networkVlan)
'''
- This test verifies that on creation of an L2 network with network offering
with isPersistent flag
+ This test verifies that on creation of an L2 network with network offering
with isPersistent flag
set to true the corresponding network resources are created without having
to deploy a VM - VR created
'''
@attr(tags=["advanced", "l2", "persistent", "network"],
required_hardware="false")