aboutsummaryrefslogtreecommitdiffstats
path: root/sfc/lib
diff options
context:
space:
mode:
Diffstat (limited to 'sfc/lib')
-rw-r--r--sfc/lib/config.py1
-rw-r--r--sfc/lib/openstack_utils.py33
2 files changed, 21 insertions, 13 deletions
diff --git a/sfc/lib/config.py b/sfc/lib/config.py
index 6ced2763..5ee3077a 100644
--- a/sfc/lib/config.py
+++ b/sfc/lib/config.py
@@ -31,7 +31,6 @@ class CommonConfig(object):
def __init__(self):
self.line_length = 30
- self.test_db = os.environ['TEST_DB_URL']
self.functest_repo_path = os.path.dirname(functest.__file__)
self.functest_logging_api = os.path.join(self.functest_repo_path,
"ci", "logging.ini")
diff --git a/sfc/lib/openstack_utils.py b/sfc/lib/openstack_utils.py
index 535870da..e127e8d2 100644
--- a/sfc/lib/openstack_utils.py
+++ b/sfc/lib/openstack_utils.py
@@ -30,7 +30,7 @@ import snaps.openstack.create_instance as cr_inst
from snaps.config.vm_inst import VmInstanceConfig, FloatingIpConfig
from snaps.openstack.utils import (
- nova_utils, neutron_utils, glance_utils, heat_utils, keystone_utils)
+ nova_utils, neutron_utils, heat_utils, keystone_utils)
logger = logging.getLogger(__name__)
DEFAULT_TACKER_API_VERSION = '1.0'
@@ -44,8 +44,8 @@ class OpenStackSFC:
self.creators = []
self.nova = nova_utils.nova_client(self.os_creds)
self.neutron = neutron_utils.neutron_client(self.os_creds)
- self.glance = glance_utils.glance_client(self.os_creds)
self.heat = heat_utils.heat_client(self.os_creds)
+ self.keystone = keystone_utils.keystone_client(self.os_creds)
def register_glance_image(self, name, url, img_format, public):
image_settings = ImageConfig(name=name, img_format=img_format, url=url,
@@ -159,11 +159,10 @@ class OpenStackSFC:
'''
for creator in self.creators:
# We want to filter the vm creators
- if hasattr(creator, 'get_vm_info'):
- vm_info = creator.get_vm_info()
+ if hasattr(creator, 'get_vm_inst'):
# We want to fetch only the client
- if vm_info['name'] == 'client':
- return vm_info['OS-EXT-SRV-ATTR:host']
+ if creator.get_vm_inst().name == 'client':
+ return creator.get_vm_inst().compute_host
raise Exception("There is no client VM!!")
@@ -187,14 +186,18 @@ class OpenStackSFC:
'''
stacks = self.heat.stacks.list()
fips = []
+ project_name = 'admin'
for stack in stacks:
servers = heat_utils.get_stack_servers(self.heat,
self.nova,
self.neutron,
- stack)
+ self.keystone,
+ stack,
+ project_name)
sf_creator = cr_inst.generate_creator(self.os_creds,
servers[0],
- self.image_settings)
+ self.image_settings,
+ project_name)
port_name = servers[0].ports[0].name
name = servers[0].name + "-float"
float_ip = FloatingIpConfig(name=name,
@@ -206,13 +209,19 @@ class OpenStackSFC:
return fips
- def get_client_port_id(self, vm):
+ def get_client_port(self, vm, vm_creator):
'''
Get the neutron port id of the client
'''
- port_id = neutron_utils.get_port(self.neutron,
- port_name=vm.name + "-port")
- return port_id
+ port_name = vm.name + "-port"
+ port = vm_creator.get_port_by_name(port_name)
+ if port is not None:
+ return port
+ else:
+ logger.error("The VM {0} does not have any port"
+ " with name {1}".format(vm_name, port_name))
+ raise Exception("Client VM does not have the desired port")
+
# TACKER SECTION #