From cbd1cf8b06a89a9c4021048b6a6dd466bf72d4c8 Mon Sep 17 00:00:00 2001 From: George Paraskevopoulos Date: Wed, 15 Feb 2017 14:24:14 +0200 Subject: Pass availability zone as param on vnf create JIRA: SFC-63 JIRA: SFC-73 Instead of changing the vnfd-template file in runtime we can pass the availability zone as a parameter when the vnf is created This enables also the use of topology_shuffler for SFC-63 Change-Id: Ie650e3347e40aee030005b6a2272cae64968d303 Signed-off-by: George Paraskevopoulos --- sfc/lib/utils.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'sfc/lib/utils.py') diff --git a/sfc/lib/utils.py b/sfc/lib/utils.py index 9c191462..67dbff22 100644 --- a/sfc/lib/utils.py +++ b/sfc/lib/utils.py @@ -12,10 +12,12 @@ import os import re import subprocess import time +import yaml import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as ft_utils import functest.utils.openstack_utils as os_utils +import functest.utils.openstack_tacker as os_tacker logger = ft_logger.Logger("sfc_test_utils").getLogger() @@ -75,6 +77,22 @@ def download_image(url, image_path): logger.info("Using old image") +def create_vnf_in_av_zone(tacker_client, vnf_name, vnfd_name, av_zone=None): + param_file = os.path.join(os.getcwd(), + 'vnfd-templates', + 'test-vnfd-default-params.yaml') + if av_zone is not None: + param_file = os.path.join('/tmp', 'param_{0}.yaml'.format(av_zone)) + data = {'zone': av_zone} + with open(param_file) as f: + yaml.dump(data, f) + + os_tacker.create_vnf(tacker_client, + vnf_name, + vnfd_name=vnfd_name, + param_file=param_file) + + def setup_neutron(neutron_client, net, subnet, router, subnet_cidr): n_dict = os_utils.create_network_full(neutron_client, net, -- cgit 1.2.3-korg