mirror of
https://github.com/apache/cloudstack.git
synced 2025-12-16 02:22:52 +01:00
Revert "CLOUDSTACK-7044: Portable IP Range test case changes - reading portable ip range from test_data.py file"
This reverts commit 613eb12104af5c27935091127a1a19941f96e336.
This commit is contained in:
parent
c792f149fb
commit
98e2a0444f
@ -37,9 +37,11 @@ from marvin.lib.common import (get_zone,
|
|||||||
get_domain,
|
get_domain,
|
||||||
get_region,
|
get_region,
|
||||||
get_pod,
|
get_pod,
|
||||||
isIpInDesiredState)
|
isIpInDesiredState,
|
||||||
|
getPortableIpRangeServices)
|
||||||
from netaddr import IPAddress
|
from netaddr import IPAddress
|
||||||
from marvin.sshClient import SshClient
|
from marvin.sshClient import SshClient
|
||||||
|
from marvin.codes import FAILED
|
||||||
from nose.plugins.attrib import attr
|
from nose.plugins.attrib import attr
|
||||||
|
|
||||||
class Services:
|
class Services:
|
||||||
@ -141,7 +143,14 @@ class Services:
|
|||||||
"publicport": 22,
|
"publicport": 22,
|
||||||
"protocol": 'TCP',
|
"protocol": 'TCP',
|
||||||
},
|
},
|
||||||
"portableiprange":"",
|
"portableIpRange":
|
||||||
|
{
|
||||||
|
"gateway": "10.223.252.195",
|
||||||
|
"netmask": "255.255.255.192",
|
||||||
|
"startip": "10.223.252.196",
|
||||||
|
"endip": "10.223.252.197",
|
||||||
|
"vlan": "1001",
|
||||||
|
},
|
||||||
"ostype": 'CentOS 5.3 (64-bit)'
|
"ostype": 'CentOS 5.3 (64-bit)'
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -155,7 +164,7 @@ class TestCreatePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
cls.testClient = super(TestCreatePortablePublicIpRanges, cls).getClsTestClient()
|
cls.testClient = super(TestCreatePortablePublicIpRanges, cls).getClsTestClient()
|
||||||
cls.api_client = cls.testClient.getApiClient()
|
cls.api_client = cls.testClient.getApiClient()
|
||||||
cls.services = Services().services
|
cls.services = Services().services
|
||||||
cls.services["portableiprange"] = cls.testClient.getParsedTestDataConfig()["portableIpRange"]
|
cls.config = cls.services
|
||||||
# Get Zone, Domain and templates
|
# Get Zone, Domain and templates
|
||||||
cls.region = get_region(cls.api_client)
|
cls.region = get_region(cls.api_client)
|
||||||
cls.domain = get_domain(cls.api_client)
|
cls.domain = get_domain(cls.api_client)
|
||||||
@ -181,7 +190,6 @@ class TestCreatePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.apiclient = self.testClient.getApiClient()
|
self.apiclient = self.testClient.getApiClient()
|
||||||
self.dbclient = self.testClient.getDbConnection()
|
self.dbclient = self.testClient.getDbConnection()
|
||||||
self.services["portableiprange"]["regionid"] = self.region.id
|
|
||||||
|
|
||||||
self.cleanup = []
|
self.cleanup = []
|
||||||
return
|
return
|
||||||
@ -200,10 +208,17 @@ class TestCreatePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
"""
|
"""
|
||||||
# 1. Create new portable ip range with root admin api
|
# 1. Create new portable ip range with root admin api
|
||||||
# 2. Portable ip range should be created successfully
|
# 2. Portable ip range should be created successfully
|
||||||
|
|
||||||
|
portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
if portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
|
portable_ip_range_services["regionid"] = self.region.id
|
||||||
|
|
||||||
try:
|
try:
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
new_portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
new_portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
portable_ip_range_services)
|
||||||
|
|
||||||
self.cleanup.append(new_portable_ip_range)
|
self.cleanup.append(new_portable_ip_range)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -217,6 +232,11 @@ class TestCreatePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
# 1. Create new portable ip range with non root admin api client
|
# 1. Create new portable ip range with non root admin api client
|
||||||
# 2. Portable ip range should not be created
|
# 2. Portable ip range should not be created
|
||||||
|
|
||||||
|
portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
|
||||||
|
if portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
self.account = Account.create(
|
self.account = Account.create(
|
||||||
self.apiclient,
|
self.apiclient,
|
||||||
@ -230,10 +250,12 @@ class TestCreatePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
DomainName=self.account.domain
|
DomainName=self.account.domain
|
||||||
)
|
)
|
||||||
|
|
||||||
|
portable_ip_range_services["regionid"] = self.region.id
|
||||||
|
|
||||||
self.debug("Trying to create portable ip range with non root-admin api client, should raise exception")
|
self.debug("Trying to create portable ip range with non root-admin api client, should raise exception")
|
||||||
with self.assertRaises(Exception):
|
with self.assertRaises(Exception):
|
||||||
portable_ip_range = PortablePublicIpRange.create(self.api_client_user,
|
portable_ip_range = PortablePublicIpRange.create(self.api_client_user,
|
||||||
self.services["portableiprange"])
|
portable_ip_range_services)
|
||||||
self.cleanup.append(portable_ip_range)
|
self.cleanup.append(portable_ip_range)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.fail(e)
|
self.fail(e)
|
||||||
@ -247,14 +269,19 @@ class TestCreatePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
# 1. Try to create new portable ip range with invalid region id
|
# 1. Try to create new portable ip range with invalid region id
|
||||||
# 2. Portable ip range creation should fail
|
# 2. Portable ip range creation should fail
|
||||||
|
|
||||||
self.services["portableiprange"]["regionid"] = -1
|
portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
|
||||||
|
if portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
|
portable_ip_range_services["regionid"] = -1
|
||||||
|
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
self.debug("Trying to create portable ip range with wrong region id")
|
self.debug("Trying to create portable ip range with wrong region id")
|
||||||
|
|
||||||
with self.assertRaises(Exception):
|
with self.assertRaises(Exception):
|
||||||
portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
portable_ip_range_services)
|
||||||
self.cleanup.append(portable_ip_range)
|
self.cleanup.append(portable_ip_range)
|
||||||
|
|
||||||
return
|
return
|
||||||
@ -269,7 +296,7 @@ class TestDeletePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
cls.testClient = super(TestDeletePortablePublicIpRanges, cls).getClsTestClient()
|
cls.testClient = super(TestDeletePortablePublicIpRanges, cls).getClsTestClient()
|
||||||
cls.api_client = cls.testClient.getApiClient()
|
cls.api_client = cls.testClient.getApiClient()
|
||||||
cls.services = Services().services
|
cls.services = Services().services
|
||||||
cls.services["portableiprange"] = cls.testClient.getParsedTestDataConfig()["portableIpRange"]
|
cls.config = cls.services
|
||||||
# Get Zone, Domain and templates
|
# Get Zone, Domain and templates
|
||||||
cls.region = get_region(cls.api_client)
|
cls.region = get_region(cls.api_client)
|
||||||
cls.domain = get_domain(cls.api_client)
|
cls.domain = get_domain(cls.api_client)
|
||||||
@ -279,7 +306,7 @@ class TestDeletePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
cls.services["domainid"] = cls.domain.id
|
cls.services["domainid"] = cls.domain.id
|
||||||
cls.services["zoneid"] = cls.zone.id
|
cls.services["zoneid"] = cls.zone.id
|
||||||
cls.services["regionid"] = cls.region.id
|
cls.services["regionid"] = cls.region.id
|
||||||
cls.services["portableiprange"]["regionid"] = cls.region.id
|
|
||||||
cls._cleanup = []
|
cls._cleanup = []
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -296,9 +323,16 @@ class TestDeletePortablePublicIpRanges(cloudstackTestCase):
|
|||||||
self.apiclient = self.testClient.getApiClient()
|
self.apiclient = self.testClient.getApiClient()
|
||||||
self.dbclient = self.testClient.getDbConnection()
|
self.dbclient = self.testClient.getDbConnection()
|
||||||
|
|
||||||
|
portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
|
||||||
|
if portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
|
portable_ip_range_services["regionid"] = self.region.id
|
||||||
|
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
portable_ip_range_services)
|
||||||
|
|
||||||
self.cleanup = []
|
self.cleanup = []
|
||||||
return
|
return
|
||||||
@ -420,7 +454,7 @@ class TestListPortablePublicIpRanges(cloudstackTestCase):
|
|||||||
cls.testClient = super(TestListPortablePublicIpRanges, cls).getClsTestClient()
|
cls.testClient = super(TestListPortablePublicIpRanges, cls).getClsTestClient()
|
||||||
cls.api_client = cls.testClient.getApiClient()
|
cls.api_client = cls.testClient.getApiClient()
|
||||||
cls.services = Services().services
|
cls.services = Services().services
|
||||||
cls.services["portableiprange"] = cls.testClient.getParsedTestDataConfig()["portableIpRange"]
|
cls.config = cls.services
|
||||||
# Get Zone, Domain and templates
|
# Get Zone, Domain and templates
|
||||||
cls.region = get_region(cls.api_client)
|
cls.region = get_region(cls.api_client)
|
||||||
cls.domain = get_domain(cls.api_client)
|
cls.domain = get_domain(cls.api_client)
|
||||||
@ -430,7 +464,7 @@ class TestListPortablePublicIpRanges(cloudstackTestCase):
|
|||||||
cls.services["domainid"] = cls.domain.id
|
cls.services["domainid"] = cls.domain.id
|
||||||
cls.services["zoneid"] = cls.zone.id
|
cls.services["zoneid"] = cls.zone.id
|
||||||
cls.services["regionid"] = cls.region.id
|
cls.services["regionid"] = cls.region.id
|
||||||
cls.services["portableiprange"]["regionid"] = cls.region.id
|
|
||||||
cls._cleanup = []
|
cls._cleanup = []
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -446,13 +480,27 @@ class TestListPortablePublicIpRanges(cloudstackTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.apiclient = self.testClient.getApiClient()
|
self.apiclient = self.testClient.getApiClient()
|
||||||
self.dbclient = self.testClient.getDbConnection()
|
self.dbclient = self.testClient.getDbConnection()
|
||||||
|
|
||||||
|
#create new portable ip range
|
||||||
|
self.portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
|
||||||
|
if self.portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
|
self.portable_ip_range_services["regionid"] = self.region.id
|
||||||
|
|
||||||
self.debug("Creating new portable IP range with startip:%s and endip:%s" %
|
self.debug("Creating new portable IP range with startip:%s and endip:%s" %
|
||||||
(str(self.services["portableiprange"]["startip"]),
|
(str(self.portable_ip_range_services["startip"]),
|
||||||
str(self.services["portableiprange"]["endip"])))
|
str(self.portable_ip_range_services["endip"])))
|
||||||
|
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
self.portable_ip_range_services)
|
||||||
|
|
||||||
|
self.debug("Created new portable IP range with startip:%s and endip:%s and id:%s" %
|
||||||
|
(self.portable_ip_range.startip,
|
||||||
|
self.portable_ip_range.endip,
|
||||||
|
self.portable_ip_range.id))
|
||||||
|
|
||||||
self.cleanup = [self.portable_ip_range, ]
|
self.cleanup = [self.portable_ip_range, ]
|
||||||
return
|
return
|
||||||
@ -484,16 +532,16 @@ class TestListPortablePublicIpRanges(cloudstackTestCase):
|
|||||||
|
|
||||||
portable_ip_range = list_portable_ip_range[0]
|
portable_ip_range = list_portable_ip_range[0]
|
||||||
|
|
||||||
self.assertEqual(str(portable_ip_range.startip), str(self.services["portableiprange"]["startip"]),
|
self.assertEqual(str(portable_ip_range.startip), str(self.portable_ip_range_services["startip"]),
|
||||||
"Listed startip not matching with the startip of created public ip range")
|
"Listed startip not matching with the startip of created public ip range")
|
||||||
|
|
||||||
self.assertEqual(str(portable_ip_range.endip), str(self.services["portableiprange"]["endip"]),
|
self.assertEqual(str(portable_ip_range.endip), str(self.portable_ip_range_services["endip"]),
|
||||||
"Listed endip not matching with the endip of created public ip range")
|
"Listed endip not matching with the endip of created public ip range")
|
||||||
|
|
||||||
self.assertEqual(str(portable_ip_range.gateway), str(self.services["portableiprange"]["gateway"]),
|
self.assertEqual(str(portable_ip_range.gateway), str(self.portable_ip_range_services["gateway"]),
|
||||||
"Listed gateway not matching with the gateway of created public ip range")
|
"Listed gateway not matching with the gateway of created public ip range")
|
||||||
|
|
||||||
self.assertEqual(str(portable_ip_range.netmask), str(self.services["portableiprange"]["netmask"]),
|
self.assertEqual(str(portable_ip_range.netmask), str(self.portable_ip_range_services["netmask"]),
|
||||||
"Listed netmask not matching with the netmask of created public ip range")
|
"Listed netmask not matching with the netmask of created public ip range")
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -532,7 +580,7 @@ class TestAssociatePublicIp(cloudstackTestCase):
|
|||||||
cls.testClient = super(TestAssociatePublicIp, cls).getClsTestClient()
|
cls.testClient = super(TestAssociatePublicIp, cls).getClsTestClient()
|
||||||
cls.api_client = cls.testClient.getApiClient()
|
cls.api_client = cls.testClient.getApiClient()
|
||||||
cls.services = Services().services
|
cls.services = Services().services
|
||||||
cls.services["portableiprange"] = cls.testClient.getParsedTestDataConfig()["portableIpRange"]
|
cls.config = cls.services
|
||||||
# Get Zone, Domain and templates
|
# Get Zone, Domain and templates
|
||||||
cls.region = get_region(cls.api_client)
|
cls.region = get_region(cls.api_client)
|
||||||
cls.domain = get_domain(cls.api_client)
|
cls.domain = get_domain(cls.api_client)
|
||||||
@ -542,7 +590,6 @@ class TestAssociatePublicIp(cloudstackTestCase):
|
|||||||
cls.services["domainid"] = cls.domain.id
|
cls.services["domainid"] = cls.domain.id
|
||||||
cls.services["zoneid"] = cls.zone.id
|
cls.services["zoneid"] = cls.zone.id
|
||||||
cls.services["regionid"] = cls.region.id
|
cls.services["regionid"] = cls.region.id
|
||||||
cls.services["portableiprange"]["regionid"] = cls.region.id
|
|
||||||
|
|
||||||
template = get_template(
|
template = get_template(
|
||||||
cls.api_client,
|
cls.api_client,
|
||||||
@ -594,10 +641,19 @@ class TestAssociatePublicIp(cloudstackTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.apiclient = self.testClient.getApiClient()
|
self.apiclient = self.testClient.getApiClient()
|
||||||
self.dbclient = self.testClient.getDbConnection()
|
self.dbclient = self.testClient.getDbConnection()
|
||||||
|
|
||||||
self.cleanup = []
|
self.cleanup = []
|
||||||
|
|
||||||
|
portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
|
||||||
|
if portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
|
portable_ip_range_services["regionid"] = self.region.id
|
||||||
|
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
portable_ip_range_services)
|
||||||
self.cleanup.append(self.portable_ip_range)
|
self.cleanup.append(self.portable_ip_range)
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -840,7 +896,7 @@ class TestDisassociatePublicIp(cloudstackTestCase):
|
|||||||
cls.testClient = super(TestDisassociatePublicIp, cls).getClsTestClient()
|
cls.testClient = super(TestDisassociatePublicIp, cls).getClsTestClient()
|
||||||
cls.api_client = cls.testClient.getApiClient()
|
cls.api_client = cls.testClient.getApiClient()
|
||||||
cls.services = Services().services
|
cls.services = Services().services
|
||||||
cls.services["portableiprange"] = cls.testClient.getParsedTestDataConfig()["portableIpRange"]
|
cls.config = cls.services
|
||||||
# Get Zone, Domain and templates
|
# Get Zone, Domain and templates
|
||||||
cls.region = get_region(cls.api_client)
|
cls.region = get_region(cls.api_client)
|
||||||
cls.domain = get_domain(cls.api_client)
|
cls.domain = get_domain(cls.api_client)
|
||||||
@ -850,7 +906,6 @@ class TestDisassociatePublicIp(cloudstackTestCase):
|
|||||||
cls.services["domainid"] = cls.domain.id
|
cls.services["domainid"] = cls.domain.id
|
||||||
cls.services["zoneid"] = cls.zone.id
|
cls.services["zoneid"] = cls.zone.id
|
||||||
cls.services["regionid"] = cls.region.id
|
cls.services["regionid"] = cls.region.id
|
||||||
cls.services["portableiprange"]["regionid"] = cls.region.id
|
|
||||||
|
|
||||||
template = get_template(
|
template = get_template(
|
||||||
cls.api_client,
|
cls.api_client,
|
||||||
@ -922,9 +977,16 @@ class TestDisassociatePublicIp(cloudstackTestCase):
|
|||||||
self.dbclient = self.testClient.getDbConnection()
|
self.dbclient = self.testClient.getDbConnection()
|
||||||
self.cleanup = []
|
self.cleanup = []
|
||||||
|
|
||||||
|
portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
|
||||||
|
if portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
|
portable_ip_range_services["regionid"] = self.region.id
|
||||||
|
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
new_portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
new_portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
portable_ip_range_services)
|
||||||
self.cleanup.append(new_portable_ip_range)
|
self.cleanup.append(new_portable_ip_range)
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -1073,7 +1135,7 @@ class TestDeleteAccount(cloudstackTestCase):
|
|||||||
cls.testClient = super(TestDeleteAccount, cls).getClsTestClient()
|
cls.testClient = super(TestDeleteAccount, cls).getClsTestClient()
|
||||||
cls.api_client = cls.testClient.getApiClient()
|
cls.api_client = cls.testClient.getApiClient()
|
||||||
cls.services = Services().services
|
cls.services = Services().services
|
||||||
cls.services["portableiprange"] = cls.testClient.getParsedTestDataConfig()["portableIpRange"]
|
cls.config = cls.services
|
||||||
# Get Zone, Domain and templates
|
# Get Zone, Domain and templates
|
||||||
cls.region = get_region(cls.api_client)
|
cls.region = get_region(cls.api_client)
|
||||||
cls.domain = get_domain(cls.api_client)
|
cls.domain = get_domain(cls.api_client)
|
||||||
@ -1084,7 +1146,6 @@ class TestDeleteAccount(cloudstackTestCase):
|
|||||||
cls.services["domainid"] = cls.domain.id
|
cls.services["domainid"] = cls.domain.id
|
||||||
cls.services["zoneid"] = cls.zone.id
|
cls.services["zoneid"] = cls.zone.id
|
||||||
cls.services["regionid"] = cls.region.id
|
cls.services["regionid"] = cls.region.id
|
||||||
cls.services["portableiprange"]["regionid"] = cls.region.id
|
|
||||||
template = get_template(
|
template = get_template(
|
||||||
cls.api_client,
|
cls.api_client,
|
||||||
cls.zone.id,
|
cls.zone.id,
|
||||||
@ -1110,6 +1171,10 @@ class TestDeleteAccount(cloudstackTestCase):
|
|||||||
self.apiclient = self.testClient.getApiClient()
|
self.apiclient = self.testClient.getApiClient()
|
||||||
self.dbclient = self.testClient.getDbConnection()
|
self.dbclient = self.testClient.getDbConnection()
|
||||||
|
|
||||||
|
portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
if portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
self.cleanup = []
|
self.cleanup = []
|
||||||
try:
|
try:
|
||||||
self.account = Account.create(
|
self.account = Account.create(
|
||||||
@ -1119,10 +1184,10 @@ class TestDeleteAccount(cloudstackTestCase):
|
|||||||
admin=True
|
admin=True
|
||||||
)
|
)
|
||||||
self.cleanup.append(self.account)
|
self.cleanup.append(self.account)
|
||||||
self.debug("portable ip range services: %s" % self.services["portableiprange"])
|
portable_ip_range_services["regionid"] = self.region.id
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
new_portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
new_portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
portable_ip_range_services)
|
||||||
self.cleanup.append(new_portable_ip_range)
|
self.cleanup.append(new_portable_ip_range)
|
||||||
self.network_offering = NetworkOffering.create(
|
self.network_offering = NetworkOffering.create(
|
||||||
self.apiclient,
|
self.apiclient,
|
||||||
@ -1161,7 +1226,8 @@ class TestDeleteAccount(cloudstackTestCase):
|
|||||||
# 2. Delete account
|
# 2. Delete account
|
||||||
# 3. Account should get deleted successfully
|
# 3. Account should get deleted successfully
|
||||||
|
|
||||||
portableip = PublicIPAddress.create(
|
try:
|
||||||
|
portableip = PublicIPAddress.create(
|
||||||
self.apiclient,
|
self.apiclient,
|
||||||
accountid=self.account.name,
|
accountid=self.account.name,
|
||||||
zoneid=self.zone.id,
|
zoneid=self.zone.id,
|
||||||
@ -1169,16 +1235,12 @@ class TestDeleteAccount(cloudstackTestCase):
|
|||||||
networkid=self.network.id,
|
networkid=self.network.id,
|
||||||
isportable=True
|
isportable=True
|
||||||
)
|
)
|
||||||
try:
|
|
||||||
self.account.delete(self.apiclient)
|
self.account.delete(self.apiclient)
|
||||||
self.cleanup.remove(self.account)
|
with self.assertRaises(Exception):
|
||||||
except Exception as e:
|
PublicIPAddress.list(self.apiclient,
|
||||||
portableip.delete(self.apiclient)
|
|
||||||
self.fail(e)
|
|
||||||
|
|
||||||
listpublicips = PublicIPAddress.list(self.apiclient,
|
|
||||||
id=portableip.ipaddress.id)
|
id=portableip.ipaddress.id)
|
||||||
self.assertTrue(listpublicips is None, "list of public ips should be None")
|
except Exception as e:
|
||||||
|
self.fail(e)
|
||||||
return
|
return
|
||||||
|
|
||||||
@attr(tags=["advanced", "selfservice"])
|
@attr(tags=["advanced", "selfservice"])
|
||||||
@ -1250,24 +1312,19 @@ class TestDeleteAccount(cloudstackTestCase):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
portableip.delete(self.apiclient)
|
portableip.delete(self.apiclient)
|
||||||
self.account.delete(self.apiclient)
|
self.account.delete(self.apiclient)
|
||||||
self.cleanup.remove(self.account)
|
|
||||||
self.fail("Error %s" % e)
|
self.fail("Error %s" % e)
|
||||||
|
|
||||||
self.debug("Deleting account: %s :" % self.account.name)
|
self.debug("Deleting account: %s :" % self.account.name)
|
||||||
|
|
||||||
try:
|
self.account.delete(self.apiclient)
|
||||||
self.account.delete(self.apiclient)
|
|
||||||
self.cleanup.remove(self.account)
|
|
||||||
except Exception as e:
|
|
||||||
portableip.delete(self.apiclient)
|
|
||||||
self.fail(e)
|
|
||||||
|
|
||||||
self.debug("Trying to list the ip address associated with deleted account, \
|
self.debug("Trying to list the ip address associated with deleted account, \
|
||||||
should throw exception")
|
should throw exception")
|
||||||
|
|
||||||
listpublicips = PublicIPAddress.list(self.apiclient,
|
with self.assertRaises(Exception):
|
||||||
|
PublicIPAddress.list(self.apiclient,
|
||||||
id=portableip.ipaddress.id)
|
id=portableip.ipaddress.id)
|
||||||
self.assertTrue(listpublicips is None, "list of public ips should be None")
|
|
||||||
return
|
return
|
||||||
|
|
||||||
class TestPortableIpTransferAcrossNetworks(cloudstackTestCase):
|
class TestPortableIpTransferAcrossNetworks(cloudstackTestCase):
|
||||||
@ -1280,7 +1337,7 @@ class TestPortableIpTransferAcrossNetworks(cloudstackTestCase):
|
|||||||
cls.testClient = super(TestPortableIpTransferAcrossNetworks, cls).getClsTestClient()
|
cls.testClient = super(TestPortableIpTransferAcrossNetworks, cls).getClsTestClient()
|
||||||
cls.api_client = cls.testClient.getApiClient()
|
cls.api_client = cls.testClient.getApiClient()
|
||||||
cls.services = Services().services
|
cls.services = Services().services
|
||||||
cls.services["portableiprange"] = cls.testClient.getParsedTestDataConfig()["portableIpRange"]
|
cls.config = cls.services
|
||||||
# Get Zone, Domain and templates
|
# Get Zone, Domain and templates
|
||||||
cls.region = get_region(cls.api_client)
|
cls.region = get_region(cls.api_client)
|
||||||
cls.domain = get_domain(cls.api_client)
|
cls.domain = get_domain(cls.api_client)
|
||||||
@ -1290,7 +1347,6 @@ class TestPortableIpTransferAcrossNetworks(cloudstackTestCase):
|
|||||||
cls.services["domainid"] = cls.domain.id
|
cls.services["domainid"] = cls.domain.id
|
||||||
cls.services["zoneid"] = cls.zone.id
|
cls.services["zoneid"] = cls.zone.id
|
||||||
cls.services["regionid"] = cls.region.id
|
cls.services["regionid"] = cls.region.id
|
||||||
cls.services["portableiprange"]["regionid"] = cls.region.id
|
|
||||||
|
|
||||||
template = get_template(
|
template = get_template(
|
||||||
cls.api_client,
|
cls.api_client,
|
||||||
@ -1375,9 +1431,18 @@ class TestPortableIpTransferAcrossNetworks(cloudstackTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.apiclient = self.testClient.getApiClient()
|
self.apiclient = self.testClient.getApiClient()
|
||||||
self.dbclient = self.testClient.getDbConnection()
|
self.dbclient = self.testClient.getDbConnection()
|
||||||
|
|
||||||
|
#create new portable ip range
|
||||||
|
self.portable_ip_range_services = getPortableIpRangeServices(self.config)
|
||||||
|
|
||||||
|
if self.portable_ip_range_services is FAILED:
|
||||||
|
self.skipTest('Failed to read config values related to portable ip range')
|
||||||
|
|
||||||
|
self.portable_ip_range_services["regionid"] = self.region.id
|
||||||
|
|
||||||
#create new portable ip range
|
#create new portable ip range
|
||||||
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
self.portable_ip_range = PortablePublicIpRange.create(self.apiclient,
|
||||||
self.services["portableiprange"])
|
self.portable_ip_range_services)
|
||||||
|
|
||||||
self.cleanup = [self.portable_ip_range, ]
|
self.cleanup = [self.portable_ip_range, ]
|
||||||
return
|
return
|
||||||
|
|||||||
@ -886,8 +886,7 @@ test_data = {
|
|||||||
"netmask": "255.255.255.192",
|
"netmask": "255.255.255.192",
|
||||||
"startip": "10.223.252.196",
|
"startip": "10.223.252.196",
|
||||||
"endip": "10.223.252.197",
|
"endip": "10.223.252.197",
|
||||||
"vlan": "1001",
|
"vlan": "1001"
|
||||||
"regionid": ""
|
|
||||||
},
|
},
|
||||||
"sparse": {
|
"sparse": {
|
||||||
"name": "Sparse Type Disk offering",
|
"name": "Sparse Type Disk offering",
|
||||||
|
|||||||
@ -1165,6 +1165,42 @@ def createNetworkRulesForVM(apiclient, virtualmachine, ruletype,
|
|||||||
[FAIL, e]
|
[FAIL, e]
|
||||||
return [PASS, public_ip]
|
return [PASS, public_ip]
|
||||||
|
|
||||||
|
def getPortableIpRangeServices(config):
|
||||||
|
""" Reads config values related to portable ip and fills up
|
||||||
|
services accordingly"""
|
||||||
|
|
||||||
|
services = {}
|
||||||
|
attributeError = False
|
||||||
|
|
||||||
|
if config["portableIpRange"]["startip"]:
|
||||||
|
services["startip"] = config["portableIpRange"]["startip"]
|
||||||
|
else:
|
||||||
|
attributeError = True
|
||||||
|
|
||||||
|
if config["portableIpRange"]["endip"]:
|
||||||
|
services["endip"] = config["portableIpRange"]["endip"]
|
||||||
|
else:
|
||||||
|
attributeError = True
|
||||||
|
|
||||||
|
if config["portableIpRange"]["netmask"]:
|
||||||
|
services["netmask"] = config["portableIpRange"]["netmask"]
|
||||||
|
else:
|
||||||
|
attributeError = True
|
||||||
|
|
||||||
|
if config["portableIpRange"]["gateway"]:
|
||||||
|
services["gateway"] = config["portableIpRange"]["gateway"]
|
||||||
|
else:
|
||||||
|
attributeError = True
|
||||||
|
|
||||||
|
if config["portableIpRange"]["vlan"]:
|
||||||
|
services["vlan"] = config["portableIpRange"]["vlan"]
|
||||||
|
|
||||||
|
if attributeError:
|
||||||
|
services = FAILED
|
||||||
|
|
||||||
|
return services
|
||||||
|
|
||||||
|
|
||||||
def uploadVolume(apiclient, zoneid, account, services):
|
def uploadVolume(apiclient, zoneid, account, services):
|
||||||
try:
|
try:
|
||||||
# Upload the volume
|
# Upload the volume
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user