Merge "Return complete resp from security_groups_client"
This commit is contained in:
@@ -156,9 +156,8 @@ class QuotasAdminNegativeTestJSON(base.BaseV2ComputeAdminTest):
|
|||||||
|
|
||||||
s_name = data_utils.rand_name('securitygroup')
|
s_name = data_utils.rand_name('securitygroup')
|
||||||
s_description = data_utils.rand_name('description')
|
s_description = data_utils.rand_name('description')
|
||||||
securitygroup =\
|
securitygroup = self.sg_client.create_security_group(
|
||||||
self.sg_client.create_security_group(name=s_name,
|
name=s_name, description=s_description)['security_group']
|
||||||
description=s_description)
|
|
||||||
self.addCleanup(self.sg_client.delete_security_group,
|
self.addCleanup(self.sg_client.delete_security_group,
|
||||||
securitygroup['id'])
|
securitygroup['id'])
|
||||||
|
|
||||||
|
|||||||
@@ -50,9 +50,8 @@ class SecurityGroupsTestAdminJSON(base.BaseV2ComputeAdminTest):
|
|||||||
for i in range(2):
|
for i in range(2):
|
||||||
name = data_utils.rand_name('securitygroup')
|
name = data_utils.rand_name('securitygroup')
|
||||||
description = data_utils.rand_name('description')
|
description = data_utils.rand_name('description')
|
||||||
securitygroup = (self.client
|
securitygroup = self.client.create_security_group(
|
||||||
.create_security_group(name=name,
|
name=name, description=description)['security_group']
|
||||||
description=description))
|
|
||||||
self.addCleanup(self._delete_security_group,
|
self.addCleanup(self._delete_security_group,
|
||||||
securitygroup['id'], admin=False)
|
securitygroup['id'], admin=False)
|
||||||
security_group_list.append(securitygroup)
|
security_group_list.append(securitygroup)
|
||||||
@@ -63,13 +62,14 @@ class SecurityGroupsTestAdminJSON(base.BaseV2ComputeAdminTest):
|
|||||||
name = data_utils.rand_name('securitygroup')
|
name = data_utils.rand_name('securitygroup')
|
||||||
description = data_utils.rand_name('description')
|
description = data_utils.rand_name('description')
|
||||||
adm_securitygroup = self.adm_client.create_security_group(
|
adm_securitygroup = self.adm_client.create_security_group(
|
||||||
name=name, description=description)
|
name=name, description=description)['security_group']
|
||||||
self.addCleanup(self._delete_security_group,
|
self.addCleanup(self._delete_security_group,
|
||||||
adm_securitygroup['id'])
|
adm_securitygroup['id'])
|
||||||
security_group_list.append(adm_securitygroup)
|
security_group_list.append(adm_securitygroup)
|
||||||
|
|
||||||
# Fetch all security groups based on 'all_tenants' search filter
|
# Fetch all security groups based on 'all_tenants' search filter
|
||||||
fetched_list = self.adm_client.list_security_groups(all_tenants='true')
|
fetched_list = self.adm_client.list_security_groups(
|
||||||
|
all_tenants='true')['security_groups']
|
||||||
sec_group_id_list = map(lambda sg: sg['id'], fetched_list)
|
sec_group_id_list = map(lambda sg: sg['id'], fetched_list)
|
||||||
# Now check if all created Security Groups are present in fetched list
|
# Now check if all created Security Groups are present in fetched list
|
||||||
for sec_group in security_group_list:
|
for sec_group in security_group_list:
|
||||||
@@ -77,7 +77,8 @@ class SecurityGroupsTestAdminJSON(base.BaseV2ComputeAdminTest):
|
|||||||
|
|
||||||
# Fetch all security groups for non-admin user with 'all_tenants'
|
# Fetch all security groups for non-admin user with 'all_tenants'
|
||||||
# search filter
|
# search filter
|
||||||
fetched_list = self.client.list_security_groups(all_tenants='true')
|
fetched_list = (self.client.list_security_groups(all_tenants='true')
|
||||||
|
['security_groups'])
|
||||||
# Now check if all created Security Groups are present in fetched list
|
# Now check if all created Security Groups are present in fetched list
|
||||||
for sec_group in fetched_list:
|
for sec_group in fetched_list:
|
||||||
self.assertEqual(sec_group['tenant_id'], client_tenant_id,
|
self.assertEqual(sec_group['tenant_id'], client_tenant_id,
|
||||||
|
|||||||
@@ -223,9 +223,8 @@ class BaseComputeTest(tempest.test.BaseTestCase):
|
|||||||
name = data_utils.rand_name(cls.__name__ + "-securitygroup")
|
name = data_utils.rand_name(cls.__name__ + "-securitygroup")
|
||||||
if description is None:
|
if description is None:
|
||||||
description = data_utils.rand_name('description')
|
description = data_utils.rand_name('description')
|
||||||
body = \
|
body = cls.security_groups_client.create_security_group(
|
||||||
cls.security_groups_client.create_security_group(
|
name=name, description=description)['security_group']
|
||||||
name=name, description=description)
|
|
||||||
cls.security_groups.append(body)
|
cls.security_groups.append(body)
|
||||||
|
|
||||||
return body
|
return body
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ class SecurityGroupsTestJSON(base.BaseSecurityGroupsTest):
|
|||||||
security_group_list.append(body)
|
security_group_list.append(body)
|
||||||
# Fetch all Security Groups and verify the list
|
# Fetch all Security Groups and verify the list
|
||||||
# has all created Security Groups
|
# has all created Security Groups
|
||||||
fetched_list = self.client.list_security_groups()
|
fetched_list = self.client.list_security_groups()['security_groups']
|
||||||
# Now check if all the created Security Groups are in fetched list
|
# Now check if all the created Security Groups are in fetched list
|
||||||
missing_sgs = \
|
missing_sgs = \
|
||||||
[sg for sg in security_group_list if sg not in fetched_list]
|
[sg for sg in security_group_list if sg not in fetched_list]
|
||||||
@@ -53,7 +53,7 @@ class SecurityGroupsTestJSON(base.BaseSecurityGroupsTest):
|
|||||||
self.client.delete_security_group(sg['id'])
|
self.client.delete_security_group(sg['id'])
|
||||||
self.client.wait_for_resource_deletion(sg['id'])
|
self.client.wait_for_resource_deletion(sg['id'])
|
||||||
# Now check if all the created Security Groups are deleted
|
# Now check if all the created Security Groups are deleted
|
||||||
fetched_list = self.client.list_security_groups()
|
fetched_list = self.client.list_security_groups()['security_groups']
|
||||||
deleted_sgs = \
|
deleted_sgs = \
|
||||||
[sg for sg in security_group_list if sg in fetched_list]
|
[sg for sg in security_group_list if sg in fetched_list]
|
||||||
self.assertFalse(deleted_sgs,
|
self.assertFalse(deleted_sgs,
|
||||||
@@ -75,8 +75,8 @@ class SecurityGroupsTestJSON(base.BaseSecurityGroupsTest):
|
|||||||
"The created Security Group name is "
|
"The created Security Group name is "
|
||||||
"not equal to the requested name")
|
"not equal to the requested name")
|
||||||
# Now fetch the created Security Group by its 'id'
|
# Now fetch the created Security Group by its 'id'
|
||||||
fetched_group = \
|
fetched_group = (self.client.show_security_group(securitygroup['id'])
|
||||||
self.client.show_security_group(securitygroup['id'])
|
['security_group'])
|
||||||
self.assertEqual(securitygroup, fetched_group,
|
self.assertEqual(securitygroup, fetched_group,
|
||||||
"The fetched Security Group is different "
|
"The fetched Security Group is different "
|
||||||
"from the created Group")
|
"from the created Group")
|
||||||
@@ -143,7 +143,7 @@ class SecurityGroupsTestJSON(base.BaseSecurityGroupsTest):
|
|||||||
name=s_new_name,
|
name=s_new_name,
|
||||||
description=s_new_des)
|
description=s_new_des)
|
||||||
# get the security group
|
# get the security group
|
||||||
fetched_group = \
|
fetched_group = (self.client.show_security_group(securitygroup_id)
|
||||||
self.client.show_security_group(securitygroup_id)
|
['security_group'])
|
||||||
self.assertEqual(s_new_name, fetched_group['name'])
|
self.assertEqual(s_new_name, fetched_group['name'])
|
||||||
self.assertEqual(s_new_des, fetched_group['description'])
|
self.assertEqual(s_new_des, fetched_group['description'])
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ class SecurityGroupsNegativeTestJSON(base.BaseSecurityGroupsTest):
|
|||||||
|
|
||||||
def _generate_a_non_existent_security_group_id(self):
|
def _generate_a_non_existent_security_group_id(self):
|
||||||
security_group_id = []
|
security_group_id = []
|
||||||
body = self.client.list_security_groups()
|
body = self.client.list_security_groups()['security_groups']
|
||||||
for i in range(len(body)):
|
for i in range(len(body)):
|
||||||
security_group_id.append(body[i]['id'])
|
security_group_id.append(body[i]['id'])
|
||||||
# Generate a non-existent security group id
|
# Generate a non-existent security group id
|
||||||
@@ -122,7 +122,7 @@ class SecurityGroupsNegativeTestJSON(base.BaseSecurityGroupsTest):
|
|||||||
def test_delete_the_default_security_group(self):
|
def test_delete_the_default_security_group(self):
|
||||||
# Negative test:Deletion of the "default" Security Group should Fail
|
# Negative test:Deletion of the "default" Security Group should Fail
|
||||||
default_security_group_id = None
|
default_security_group_id = None
|
||||||
body = self.client.list_security_groups()
|
body = self.client.list_security_groups()['security_groups']
|
||||||
for i in range(len(body)):
|
for i in range(len(body)):
|
||||||
if body[i]['name'] == 'default':
|
if body[i]['name'] == 'default':
|
||||||
default_security_group_id = body[i]['id']
|
default_security_group_id = body[i]['id']
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ class ServerRescueTestJSON(base.BaseV2ComputeTest):
|
|||||||
cls.sg_name = data_utils.rand_name('sg')
|
cls.sg_name = data_utils.rand_name('sg')
|
||||||
cls.sg_desc = data_utils.rand_name('sg-desc')
|
cls.sg_desc = data_utils.rand_name('sg-desc')
|
||||||
cls.sg = cls.security_groups_client.create_security_group(
|
cls.sg = cls.security_groups_client.create_security_group(
|
||||||
name=cls.sg_name, description=cls.sg_desc)
|
name=cls.sg_name, description=cls.sg_desc)['security_group']
|
||||||
cls.sg_id = cls.sg['id']
|
cls.sg_id = cls.sg['id']
|
||||||
|
|
||||||
# Server for positive tests
|
# Server for positive tests
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ class AuthorizationTestJSON(base.BaseV2ComputeTest):
|
|||||||
name = data_utils.rand_name('security')
|
name = data_utils.rand_name('security')
|
||||||
description = data_utils.rand_name('description')
|
description = data_utils.rand_name('description')
|
||||||
cls.security_group = cls.security_client.create_security_group(
|
cls.security_group = cls.security_client.create_security_group(
|
||||||
name=name, description=description)
|
name=name, description=description)['security_group']
|
||||||
|
|
||||||
parent_group_id = cls.security_group['id']
|
parent_group_id = cls.security_group['id']
|
||||||
ip_protocol = 'tcp'
|
ip_protocol = 'tcp'
|
||||||
|
|||||||
@@ -271,7 +271,7 @@ class SecurityGroupService(BaseService):
|
|||||||
|
|
||||||
def list(self):
|
def list(self):
|
||||||
client = self.client
|
client = self.client
|
||||||
secgrps = client.list_security_groups()
|
secgrps = client.list_security_groups()['security_groups']
|
||||||
secgrp_del = [grp for grp in secgrps if grp['name'] != 'default']
|
secgrp_del = [grp for grp in secgrps if grp['name'] != 'default']
|
||||||
LOG.debug("List count, %s Security Groups" % len(secgrp_del))
|
LOG.debug("List count, %s Security Groups" % len(secgrp_del))
|
||||||
return secgrp_del
|
return secgrp_del
|
||||||
|
|||||||
@@ -909,14 +909,15 @@ def create_secgroups(secgroups):
|
|||||||
# only create a security group if the name isn't here
|
# only create a security group if the name isn't here
|
||||||
# i.e. a security group may be used by another server
|
# i.e. a security group may be used by another server
|
||||||
# only create a router if the name isn't here
|
# only create a router if the name isn't here
|
||||||
body = client.secgroups.list_security_groups()
|
body = client.secgroups.list_security_groups()['security_groups']
|
||||||
if any(item['name'] == secgroup['name'] for item in body):
|
if any(item['name'] == secgroup['name'] for item in body):
|
||||||
LOG.warning("Security group '%s' already exists" %
|
LOG.warning("Security group '%s' already exists" %
|
||||||
secgroup['name'])
|
secgroup['name'])
|
||||||
continue
|
continue
|
||||||
|
|
||||||
body = client.secgroups.create_security_group(
|
body = client.secgroups.create_security_group(
|
||||||
name=secgroup['name'], description=secgroup['description'])
|
name=secgroup['name'],
|
||||||
|
description=secgroup['description'])['security_group']
|
||||||
secgroup_id = body['id']
|
secgroup_id = body['id']
|
||||||
# for each security group, create the rules
|
# for each security group, create the rules
|
||||||
for rule in secgroup['rules']:
|
for rule in secgroup['rules']:
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ def create_ssh_security_group(os, add_rule=False):
|
|||||||
sg_name = data_utils.rand_name('securitygroup-')
|
sg_name = data_utils.rand_name('securitygroup-')
|
||||||
sg_description = data_utils.rand_name('description-')
|
sg_description = data_utils.rand_name('description-')
|
||||||
security_group = security_groups_client.create_security_group(
|
security_group = security_groups_client.create_security_group(
|
||||||
name=sg_name, description=sg_description)
|
name=sg_name, description=sg_description)['security_group']
|
||||||
if add_rule:
|
if add_rule:
|
||||||
security_group_rules_client.create_security_group_rule(
|
security_group_rules_client.create_security_group_rule(
|
||||||
parent_group_id=security_group['id'], ip_protocol='tcp',
|
parent_group_id=security_group['id'], ip_protocol='tcp',
|
||||||
|
|||||||
@@ -226,7 +226,7 @@ class ScenarioTest(tempest.test.BaseTestCase):
|
|||||||
_client = self.security_groups_client
|
_client = self.security_groups_client
|
||||||
_client_rules = self.security_group_rules_client
|
_client_rules = self.security_group_rules_client
|
||||||
if secgroup_id is None:
|
if secgroup_id is None:
|
||||||
sgs = _client.list_security_groups()
|
sgs = _client.list_security_groups()['security_groups']
|
||||||
for sg in sgs:
|
for sg in sgs:
|
||||||
if sg['name'] == 'default':
|
if sg['name'] == 'default':
|
||||||
secgroup_id = sg['id']
|
secgroup_id = sg['id']
|
||||||
@@ -266,7 +266,7 @@ class ScenarioTest(tempest.test.BaseTestCase):
|
|||||||
sg_name = data_utils.rand_name(self.__class__.__name__)
|
sg_name = data_utils.rand_name(self.__class__.__name__)
|
||||||
sg_desc = sg_name + " description"
|
sg_desc = sg_name + " description"
|
||||||
secgroup = self.security_groups_client.create_security_group(
|
secgroup = self.security_groups_client.create_security_group(
|
||||||
name=sg_name, description=sg_desc)
|
name=sg_name, description=sg_desc)['security_group']
|
||||||
self.assertEqual(secgroup['name'], sg_name)
|
self.assertEqual(secgroup['name'], sg_name)
|
||||||
self.assertEqual(secgroup['description'], sg_desc)
|
self.assertEqual(secgroup['description'], sg_desc)
|
||||||
self.addCleanup(self.delete_wrapper,
|
self.addCleanup(self.delete_wrapper,
|
||||||
|
|||||||
@@ -87,7 +87,8 @@ class TestLargeOpsScenario(manager.ScenarioTest):
|
|||||||
# Since no traffic is tested, we don't need to actually add rules to
|
# Since no traffic is tested, we don't need to actually add rules to
|
||||||
# secgroup
|
# secgroup
|
||||||
secgroup = self.security_groups_client.create_security_group(
|
secgroup = self.security_groups_client.create_security_group(
|
||||||
name='secgroup-%s' % name, description='secgroup-desc-%s' % name)
|
name='secgroup-%s' % name,
|
||||||
|
description='secgroup-desc-%s' % name)['security_group']
|
||||||
self.addCleanupClass(self.security_groups_client.delete_security_group,
|
self.addCleanupClass(self.security_groups_client.delete_security_group,
|
||||||
secgroup['id'])
|
secgroup['id'])
|
||||||
create_kwargs = {
|
create_kwargs = {
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class SecurityGroupsClient(service_client.ServiceClient):
|
|||||||
resp, body = self.get(url)
|
resp, body = self.get(url)
|
||||||
body = json.loads(body)
|
body = json.loads(body)
|
||||||
self.validate_response(schema.list_security_groups, resp, body)
|
self.validate_response(schema.list_security_groups, resp, body)
|
||||||
return service_client.ResponseBodyList(resp, body['security_groups'])
|
return service_client.ResponseBody(resp, body)
|
||||||
|
|
||||||
def show_security_group(self, security_group_id):
|
def show_security_group(self, security_group_id):
|
||||||
"""Get the details of a Security Group."""
|
"""Get the details of a Security Group."""
|
||||||
@@ -41,7 +41,7 @@ class SecurityGroupsClient(service_client.ServiceClient):
|
|||||||
resp, body = self.get(url)
|
resp, body = self.get(url)
|
||||||
body = json.loads(body)
|
body = json.loads(body)
|
||||||
self.validate_response(schema.get_security_group, resp, body)
|
self.validate_response(schema.get_security_group, resp, body)
|
||||||
return service_client.ResponseBody(resp, body['security_group'])
|
return service_client.ResponseBody(resp, body)
|
||||||
|
|
||||||
def create_security_group(self, **kwargs):
|
def create_security_group(self, **kwargs):
|
||||||
"""
|
"""
|
||||||
@@ -53,7 +53,7 @@ class SecurityGroupsClient(service_client.ServiceClient):
|
|||||||
resp, body = self.post('os-security-groups', post_body)
|
resp, body = self.post('os-security-groups', post_body)
|
||||||
body = json.loads(body)
|
body = json.loads(body)
|
||||||
self.validate_response(schema.get_security_group, resp, body)
|
self.validate_response(schema.get_security_group, resp, body)
|
||||||
return service_client.ResponseBody(resp, body['security_group'])
|
return service_client.ResponseBody(resp, body)
|
||||||
|
|
||||||
def update_security_group(self, security_group_id, **kwargs):
|
def update_security_group(self, security_group_id, **kwargs):
|
||||||
"""
|
"""
|
||||||
@@ -67,7 +67,7 @@ class SecurityGroupsClient(service_client.ServiceClient):
|
|||||||
post_body)
|
post_body)
|
||||||
body = json.loads(body)
|
body = json.loads(body)
|
||||||
self.validate_response(schema.update_security_group, resp, body)
|
self.validate_response(schema.update_security_group, resp, body)
|
||||||
return service_client.ResponseBody(resp, body['security_group'])
|
return service_client.ResponseBody(resp, body)
|
||||||
|
|
||||||
def delete_security_group(self, security_group_id):
|
def delete_security_group(self, security_group_id):
|
||||||
"""Deletes the provided Security Group."""
|
"""Deletes the provided Security Group."""
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ class FloatingStress(stressaction.StressAction):
|
|||||||
s_name = data_utils.rand_name('sec_grp')
|
s_name = data_utils.rand_name('sec_grp')
|
||||||
s_description = data_utils.rand_name('desc')
|
s_description = data_utils.rand_name('desc')
|
||||||
self.sec_grp = sec_grp_cli.create_security_group(
|
self.sec_grp = sec_grp_cli.create_security_group(
|
||||||
name=s_name, description=s_description)
|
name=s_name, description=s_description)['security_group']
|
||||||
create_rule = sec_grp_cli.create_security_group_rule
|
create_rule = sec_grp_cli.create_security_group_rule
|
||||||
create_rule(parent_group_id=self.sec_grp['id'], ip_protocol='tcp',
|
create_rule(parent_group_id=self.sec_grp['id'], ip_protocol='tcp',
|
||||||
from_port=22, to_port=22)
|
from_port=22, to_port=22)
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ class VolumeVerifyStress(stressaction.StressAction):
|
|||||||
s_name = data_utils.rand_name('sec_grp')
|
s_name = data_utils.rand_name('sec_grp')
|
||||||
s_description = data_utils.rand_name('desc')
|
s_description = data_utils.rand_name('desc')
|
||||||
self.sec_grp = sec_grp_cli.create_security_group(
|
self.sec_grp = sec_grp_cli.create_security_group(
|
||||||
name=s_name, description=s_description)
|
name=s_name, description=s_description)['security_group']
|
||||||
create_rule = sec_grp_cli.create_security_group_rule
|
create_rule = sec_grp_cli.create_security_group_rule
|
||||||
create_rule(parent_group_id=self.sec_grp['id'], ip_protocol='tcp',
|
create_rule(parent_group_id=self.sec_grp['id'], ip_protocol='tcp',
|
||||||
from_port=22, to_port=22)
|
from_port=22, to_port=22)
|
||||||
|
|||||||
@@ -49,7 +49,8 @@ def cleanup():
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
secgrp_client = admin_manager.security_groups_client
|
secgrp_client = admin_manager.security_groups_client
|
||||||
secgrp = secgrp_client.list_security_groups(all_tenants=True)
|
secgrp = (secgrp_client.list_security_groups(all_tenants=True)
|
||||||
|
['security_groups'])
|
||||||
secgrp_del = [grp for grp in secgrp if grp['name'] != 'default']
|
secgrp_del = [grp for grp in secgrp if grp['name'] != 'default']
|
||||||
LOG.info("Cleanup::remove %s Security Group" % len(secgrp_del))
|
LOG.info("Cleanup::remove %s Security Group" % len(secgrp_del))
|
||||||
for g in secgrp_del:
|
for g in secgrp_del:
|
||||||
|
|||||||
@@ -270,9 +270,10 @@ class TestCreateResources(JavelinUnitTest):
|
|||||||
def test_create_secgroup(self):
|
def test_create_secgroup(self):
|
||||||
self.useFixture(mockpatch.PatchObject(javelin, "client_for_user",
|
self.useFixture(mockpatch.PatchObject(javelin, "client_for_user",
|
||||||
return_value=self.fake_client))
|
return_value=self.fake_client))
|
||||||
self.fake_client.secgroups.list_security_groups.return_value = []
|
self.fake_client.secgroups.list_security_groups.return_value = (
|
||||||
|
{'security_groups': []})
|
||||||
self.fake_client.secgroups.create_security_group.return_value = \
|
self.fake_client.secgroups.create_security_group.return_value = \
|
||||||
{'id': self.fake_object['secgroup_id']}
|
{'security_group': {'id': self.fake_object['secgroup_id']}}
|
||||||
|
|
||||||
javelin.create_secgroups([self.fake_object])
|
javelin.create_secgroups([self.fake_object])
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user