You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Prasanna Santhanam <ts...@apache.org> on 2013/08/22 06:50:23 UTC
[PATCH] CLOUDSTACK-3927, CLOUDSTACK-3928: Fix NS scripts to
add/remove NS device in setupClass/tearDown
Please apply 1c31ee22d40d77c10593d87b8237cd0489d192cc from 4.2-forward
to 4.2
Signed-off-by: Prasanna Santhanam <ts...@apache.org>
---
.../component/test_netscaler_configs.py | 20 +-
test/integration/component/test_netscaler_lb.py | 307 +++++++++++---------
.../component/test_netscaler_lb_algo.py | 279 ++++++++++--------
.../component/test_netscaler_lb_sticky.py | 38 +--
tools/marvin/marvin/integration/lib/common.py | 29 ++
5 files changed, 380 insertions(+), 293 deletions(-)
diff --git a/test/integration/component/test_netscaler_configs.py b/test/integration/component/test_netscaler_configs.py
index bcea254..2ae6429 100644
--- a/test/integration/component/test_netscaler_configs.py
+++ b/test/integration/component/test_netscaler_configs.py
@@ -1239,21 +1239,21 @@ class TestNetScalerCustomCapacity(cloudstackTestCase):
self.network_3 = Network.create(
self.apiclient,
self.services["network"],
- accountid=self.account_3.account.name,
- domainid=self.account_3.account.domainid,
+ accountid=self.account_3.name,
+ domainid=self.account_3.domainid,
networkofferingid=self.network_offering.id,
zoneid=self.zone.id
)
self.debug("Created network with ID: %s" % self.network_3.id)
- self.debug("Deploying VM in account: %s" % self.account_3.account.name)
+ self.debug("Deploying VM in account: %s" % self.account_3.name)
with self.assertRaises(Exception):
# Spawn an instance in that network
virtual_machine_3 = VirtualMachine.create(
self.apiclient,
self.services["virtual_machine"],
- accountid=self.account_3.account.name,
- domainid=self.account_3.account.domainid,
+ accountid=self.account_3.name,
+ domainid=self.account_3.domainid,
serviceofferingid=self.service_offering.id,
networkids=[str(self.network_3.id)]
)
@@ -1513,21 +1513,21 @@ class TestNetScalerNoCapacity(cloudstackTestCase):
self.network_3 = Network.create(
self.apiclient,
self.services["network"],
- accountid=self.account_3.account.name,
- domainid=self.account_3.account.domainid,
+ accountid=self.account_3.name,
+ domainid=self.account_3.domainid,
networkofferingid=self.network_offering.id,
zoneid=self.zone.id
)
self.debug("Created network with ID: %s" % self.network_3.id)
- self.debug("Deploying VM in account: %s" % self.account_3.account.name)
+ self.debug("Deploying VM in account: %s" % self.account_3.name)
with self.assertRaises(Exception):
# Spawn an instance in that network
virtual_machine_3 = VirtualMachine.create(
self.apiclient,
self.services["virtual_machine"],
- accountid=self.account_3.account.name,
- domainid=self.account_3.account.domainid,
+ accountid=self.account_3.name,
+ domainid=self.account_3.domainid,
serviceofferingid=self.service_offering.id,
networkids=[str(self.network_3.id)]
)
diff --git a/test/integration/component/test_netscaler_lb.py b/test/integration/component/test_netscaler_lb.py
index 3942f94..901e8a7 100644
--- a/test/integration/component/test_netscaler_lb.py
+++ b/test/integration/component/test_netscaler_lb.py
@@ -145,7 +145,6 @@ class Services:
"mode": 'advanced'
}
-
class TestLbSourceNat(cloudstackTestCase):
@classmethod
@@ -162,26 +161,28 @@ class TestLbSourceNat(cloudstackTestCase):
cls.api_client,
cls.zone.id,
cls.services["ostype"]
- )
-
- cls.network_offering = NetworkOffering.create(
+ )
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
-
- cls.service_offering = ServiceOffering.create(
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.service_offering,
- cls.network_offering,
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -354,7 +355,6 @@ class TestLbSourceNat(cloudstackTestCase):
)
return
-
class TestLbOnIpWithPf(cloudstackTestCase):
@classmethod
@@ -372,25 +372,28 @@ class TestLbOnIpWithPf(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.service_offering,
- cls.network_offering,
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -583,25 +586,28 @@ class TestPfOnIpWithLb(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.service_offering,
- cls.network_offering,
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -795,25 +801,28 @@ class TestLbOnNonSourceNat(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=False
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.service_offering,
- cls.network_offering,
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -1010,25 +1019,28 @@ class TestAddMultipleVmsLb(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.service_offering,
- cls.network_offering,
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -1270,7 +1282,6 @@ class TestAddMultipleVmsLb(cloudstackTestCase):
(self.services["netscaler"]["ipaddress"], e))
return
-
class TestMultipleLbRules(cloudstackTestCase):
@classmethod
@@ -1288,25 +1299,29 @@ class TestMultipleLbRules(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.service_offering,
- cls.network_offering,
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
+
return
@classmethod
@@ -1604,25 +1619,28 @@ class TestMultipleLbRulesSameIp(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.service_offering,
- cls.network_offering
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -1913,6 +1931,7 @@ class TestLoadBalancingRule(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLoadBalancingRule,
cls
@@ -1926,30 +1945,32 @@ class TestLoadBalancingRule(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls.account = Account.create(
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
-
- # Creating network using the network offering created
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ # Creating network using the network offering created
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -1958,8 +1979,8 @@ class TestLoadBalancingRule(cloudstackTestCase):
zoneid=cls.zone.id
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -1967,24 +1988,23 @@ class TestLoadBalancingRule(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls.lb_rule = LoadBalancerRule.create(
+ cls.lb_rule = LoadBalancerRule.create(
cls.api_client,
cls.services["lbrule"],
ipaddressid=cls.public_ip.ipaddress.id,
accountid=cls.account.name,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.service_offering,
- cls.account
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -2136,6 +2156,7 @@ class TestDeleteCreateLBRule(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestDeleteCreateLBRule,
cls
@@ -2149,30 +2170,31 @@ class TestDeleteCreateLBRule(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
-
- cls.service_offering = ServiceOffering.create(
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls.account = Account.create(
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
-
- # Creating network using the network offering created
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ # Creating network using the network offering created
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -2181,8 +2203,8 @@ class TestDeleteCreateLBRule(cloudstackTestCase):
zoneid=cls.zone.id
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -2190,17 +2212,16 @@ class TestDeleteCreateLBRule(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.service_offering,
- cls.account
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -2275,6 +2296,7 @@ class TestVmWithLb(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestVmWithLb,
cls
@@ -2288,30 +2310,32 @@ class TestVmWithLb(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls.account = Account.create(
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
-
- # Creating network using the network offering created
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ # Creating network using the network offering created
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -2320,8 +2344,8 @@ class TestVmWithLb(cloudstackTestCase):
zoneid=cls.zone.id
)
- # Spawn an instance in that network
- cls.vm_1 = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.vm_1 = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -2329,7 +2353,7 @@ class TestVmWithLb(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.vm_2 = VirtualMachine.create(
+ cls.vm_2 = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -2337,38 +2361,37 @@ class TestVmWithLb(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.public_ip_1 = PublicIPAddress.create(
+ cls.public_ip_1 = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls.lb_rule_1 = LoadBalancerRule.create(
+ cls.lb_rule_1 = LoadBalancerRule.create(
cls.api_client,
cls.services["lbrule"],
ipaddressid=cls.public_ip_1.ipaddress.id,
accountid=cls.account.name,
networkid=cls.network.id
)
- cls.public_ip_2 = PublicIPAddress.create(
+ cls.public_ip_2 = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls.lb_rule_2 = LoadBalancerRule.create(
+ cls.lb_rule_2 = LoadBalancerRule.create(
cls.api_client,
cls.services["lbrule"],
ipaddressid=cls.public_ip_2.ipaddress.id,
accountid=cls.account.name,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.service_offering,
- cls.account
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
diff --git a/test/integration/component/test_netscaler_lb_algo.py b/test/integration/component/test_netscaler_lb_algo.py
index 477bd69..8033228 100644
--- a/test/integration/component/test_netscaler_lb_algo.py
+++ b/test/integration/component/test_netscaler_lb_algo.py
@@ -129,26 +129,28 @@ class TestLbWithRoundRobin(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
-
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.network_offering,
- cls.service_offering
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -341,27 +343,30 @@ class TestLbWithLeastConn(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
- cls._cleanup = [
- cls.network_offering,
- cls.service_offering
- ]
return
@classmethod
@@ -562,25 +567,28 @@ class TestLbWithSourceIp(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup = [
+ cls.netscaler
+ ]
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls._cleanup = [
- cls.network_offering,
- cls.service_offering
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -761,6 +769,7 @@ class TestLbAlgoRrLc(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLbAlgoRrLc,
cls
@@ -774,20 +783,24 @@ class TestLbAlgoRrLc(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.account = Account.create(
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -795,16 +808,16 @@ class TestLbAlgoRrLc(cloudstackTestCase):
networkofferingid=cls.network_offering.id,
zoneid=cls.zone.id
)
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -812,17 +825,16 @@ class TestLbAlgoRrLc(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.account,
- cls.service_offering
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -973,6 +985,7 @@ class TestLbAlgoLcRr(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLbAlgoLcRr,
cls
@@ -986,20 +999,24 @@ class TestLbAlgoLcRr(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.account = Account.create(
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -1007,16 +1024,16 @@ class TestLbAlgoLcRr(cloudstackTestCase):
networkofferingid=cls.network_offering.id,
zoneid=cls.zone.id
)
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -1024,17 +1041,16 @@ class TestLbAlgoLcRr(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.account,
- cls.service_offering
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -1182,6 +1198,7 @@ class TestLbAlgoRrSb(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLbAlgoRrSb,
cls
@@ -1195,20 +1212,24 @@ class TestLbAlgoRrSb(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.account = Account.create(
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -1216,16 +1237,16 @@ class TestLbAlgoRrSb(cloudstackTestCase):
networkofferingid=cls.network_offering.id,
zoneid=cls.zone.id
)
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -1234,17 +1255,16 @@ class TestLbAlgoRrSb(cloudstackTestCase):
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.account,
- cls.service_offering
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -1394,6 +1414,7 @@ class TestLbAlgoSbRr(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLbAlgoSbRr,
cls
@@ -1407,21 +1428,25 @@ class TestLbAlgoSbRr(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
- cls.account = Account.create(
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -1429,16 +1454,16 @@ class TestLbAlgoSbRr(cloudstackTestCase):
networkofferingid=cls.network_offering.id,
zoneid=cls.zone.id
)
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -1447,16 +1472,16 @@ class TestLbAlgoSbRr(cloudstackTestCase):
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.account
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -1608,6 +1633,7 @@ class TestLbAlgoSbLc(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLbAlgoSbLc,
cls
@@ -1621,21 +1647,25 @@ class TestLbAlgoSbLc(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
- cls.account = Account.create(
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -1643,16 +1673,16 @@ class TestLbAlgoSbLc(cloudstackTestCase):
networkofferingid=cls.network_offering.id,
zoneid=cls.zone.id
)
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -1661,17 +1691,16 @@ class TestLbAlgoSbLc(cloudstackTestCase):
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.service_offering,
- cls.account
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
@@ -1822,6 +1851,7 @@ class TestLbAlgoLcSb(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLbAlgoLcSb,
cls
@@ -1835,21 +1865,25 @@ class TestLbAlgoLcSb(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
- cls.account = Account.create(
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -1857,16 +1891,16 @@ class TestLbAlgoLcSb(cloudstackTestCase):
networkofferingid=cls.network_offering.id,
zoneid=cls.zone.id
)
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -1874,17 +1908,16 @@ class TestLbAlgoLcSb(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.account,
- cls.service_offering
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
diff --git a/test/integration/component/test_netscaler_lb_sticky.py b/test/integration/component/test_netscaler_lb_sticky.py
index 1edfd7b..a3a18ec 100644
--- a/test/integration/component/test_netscaler_lb_sticky.py
+++ b/test/integration/component/test_netscaler_lb_sticky.py
@@ -116,6 +116,7 @@ class TestLbStickyPolicy(cloudstackTestCase):
@classmethod
def setUpClass(cls):
+ cls._cleanup = []
cls.api_client = super(
TestLbStickyPolicy,
cls
@@ -129,30 +130,32 @@ class TestLbStickyPolicy(cloudstackTestCase):
cls.zone.id,
cls.services["ostype"]
)
-
- cls.network_offering = NetworkOffering.create(
+ try:
+ cls.netscaler = add_netscaler(cls.api_client, cls.zone.id, cls.services)
+ cls._cleanup.append(cls.netscaler)
+ cls.network_offering = NetworkOffering.create(
cls.api_client,
cls.services["network_offering"],
conservemode=True
)
- # Enable Network offering
- cls.network_offering.update(cls.api_client, state='Enabled')
- cls.services["virtual_machine"]["zoneid"] = cls.zone.id
- cls.services["virtual_machine"]["template"] = cls.template.id
+ # Enable Network offering
+ cls.network_offering.update(cls.api_client, state='Enabled')
+ cls.services["virtual_machine"]["zoneid"] = cls.zone.id
+ cls.services["virtual_machine"]["template"] = cls.template.id
- cls.service_offering = ServiceOffering.create(
+ cls.service_offering = ServiceOffering.create(
cls.api_client,
cls.services["service_offering"]
)
- cls.account = Account.create(
+ cls.account = Account.create(
cls.api_client,
cls.services["account"],
admin=True,
domainid=cls.domain.id
)
-
- # Creating network using the network offering created
- cls.network = Network.create(
+ cls._cleanup.insert(0,cls.account)
+ # Creating network using the network offering created
+ cls.network = Network.create(
cls.api_client,
cls.services["network"],
accountid=cls.account.name,
@@ -161,8 +164,8 @@ class TestLbStickyPolicy(cloudstackTestCase):
zoneid=cls.zone.id
)
- # Spawn an instance in that network
- cls.virtual_machine = VirtualMachine.create(
+ # Spawn an instance in that network
+ cls.virtual_machine = VirtualMachine.create(
cls.api_client,
cls.services["virtual_machine"],
accountid=cls.account.name,
@@ -170,17 +173,16 @@ class TestLbStickyPolicy(cloudstackTestCase):
serviceofferingid=cls.service_offering.id,
networkids=[str(cls.network.id)]
)
- cls.public_ip = PublicIPAddress.create(
+ cls.public_ip = PublicIPAddress.create(
cls.api_client,
accountid=cls.account.name,
zoneid=cls.zone.id,
domainid=cls.account.domainid,
networkid=cls.network.id
)
- cls._cleanup = [
- cls.service_offering,
- cls.account
- ]
+ except Exception as e:
+ cls.tearDownClass()
+ raise Exception ("Warning: Exception in setUpClass: %s" % e)
return
@classmethod
diff --git a/tools/marvin/marvin/integration/lib/common.py b/tools/marvin/marvin/integration/lib/common.py
index 4f5acef..7e8d92d 100644
--- a/tools/marvin/marvin/integration/lib/common.py
+++ b/tools/marvin/marvin/integration/lib/common.py
@@ -59,6 +59,35 @@ def wait_for_cleanup(apiclient, configs=None):
time.sleep(int(config_desc.value))
return
+def add_netscaler(apiclient, zoneid, services=None):
+ """ Adds Netscaler device and enables NS provider"""
+
+ cmd = listPhysicalNetworks.listPhysicalNetworksCmd()
+ cmd.zoneid = zoneid
+ physical_networks = apiclient.listPhysicalNetworks(cmd)
+ if isinstance(physical_networks, list):
+ physical_network = physical_networks[0]
+
+ netscaler = NetScaler.add(
+ apiclient,
+ services["netscaler"],
+ physicalnetworkid=physical_network.id
+ )
+
+ cmd = listNetworkServiceProviders.listNetworkServiceProvidersCmd()
+ cmd.name = 'Netscaler'
+ cmd.physicalnetworkid=physical_network.id
+ nw_service_providers = apiclient.listNetworkServiceProviders(cmd)
+
+ if isinstance(nw_service_providers, list):
+ netscaler_provider = nw_service_providers[0]
+ if netscaler_provider.state != 'Enabled':
+ cmd = updateNetworkServiceProvider.updateNetworkServiceProviderCmd()
+ cmd.id = netscaler_provider.id
+ cmd.state = 'Enabled'
+ response = apiclient.updateNetworkServiceProvider(cmd)
+
+ return netscaler
def get_domain(apiclient, services=None):
"Returns a default domain"
--
1.7.10.2 (Apple Git-33)
--
Prasanna.,
------------------------
Powered by BigRock.com