diff options
author | ShuyaNakama <shuya.nakama@okinawaopenlabs.org> | 2017-12-14 17:37:33 +0000 |
---|---|---|
committer | ShuyaNakama <shuya.nakama@okinawaopenlabs.org> | 2017-12-14 17:37:40 +0000 |
commit | fc0d8c601ce627d5f7b8c5e3eef73bd01c6db7d4 (patch) | |
tree | c16e766291612d03494e4c2a4563bddd834ada89 /functest/opnfv_tests | |
parent | 7d834311d2828437bc5350efb0792062b59ace56 (diff) |
[vyos_vrouter] Support https endpoints
JIRA: FUNCTEST-881
vyos_vrouter did not support https endpoints [1].
I fixed the following two points.
1. Modifying blueprint of Cloudify.
2. Changing nova client of utilvnf module.
Point 1
I added command of support https endpoint to blueprint of vyos_vrouter.
The Blueprint of vyos_vrouter is on our github repository [2].
I updated our repository.
Point 2
I changed nova client of utilvnf module.
Utilvnf module is utility module of vyos_vrouter.
Nova client of utilvnf module did not support https endpoints.
So, I changed to use nova client of snaps.
After fixed the source code, I confirmed the vyos_vrouter was succeeded in the following two environments.
1. Our labs (Instoller:fuel, environment of https endpoints)
2. Orange POD (Instoller:compass, environment of http endpoints)
[1] https://jira.opnfv.org/browse/FUNCTEST-881
[2] https://github.com/oolorg/opnfv-vnf-vyos-blueprint/blob/master/function-test-openstack-blueprint.yaml
Change-Id: I468df0f2486a34bc558ad161eb7de44264549006
Signed-off-by: ShuyaNakama <shuya.nakama@okinawaopenlabs.org>
Diffstat (limited to 'functest/opnfv_tests')
4 files changed, 11 insertions, 42 deletions
diff --git a/functest/opnfv_tests/vnf/router/cloudify_vrouter.py b/functest/opnfv_tests/vnf/router/cloudify_vrouter.py index 788a9413..f2cd63fb 100644 --- a/functest/opnfv_tests/vnf/router/cloudify_vrouter.py +++ b/functest/opnfv_tests/vnf/router/cloudify_vrouter.py @@ -112,10 +112,7 @@ class CloudifyVrouter(vrouter_base.VrouterOnBoardingBase): self.__logger.info("Additional pre-configuration steps") - self.util.set_credentials(self.snaps_creds.username, - self.snaps_creds.password, - self.snaps_creds.auth_url, - self.snaps_creds.project_name) + self.util.set_credentials(self.snaps_creds) # needs some images self.__logger.info("Upload some OS images if it doesn't exist") @@ -370,7 +367,8 @@ class CloudifyVrouter(vrouter_base.VrouterOnBoardingBase): def test_vnf(self): cfy_client = self.orchestrator['object'] - credentials = {"username": self.snaps_creds.username, + credentials = {"snaps_creds": self.snaps_creds, + "username": self.snaps_creds.username, "password": self.snaps_creds.password, "auth_url": self.snaps_creds.auth_url, "tenant_name": self.snaps_creds.project_name} diff --git a/functest/opnfv_tests/vnf/router/test_controller/function_test_exec.py b/functest/opnfv_tests/vnf/router/test_controller/function_test_exec.py index 9303aeca..d023d479 100644 --- a/functest/opnfv_tests/vnf/router/test_controller/function_test_exec.py +++ b/functest/opnfv_tests/vnf/router/test_controller/function_test_exec.py @@ -37,10 +37,7 @@ class FunctionTestExec(object): self.test_cmd_map_yaml = yaml.safe_load(test_cmd_map_file) test_cmd_map_file.close() - self.util.set_credentials(credentials["username"], - credentials["password"], - credentials["auth_url"], - credentials["tenant_name"]) + self.util.set_credentials(credentials["snaps_creds"]) with open(self.util.test_env_config_yaml) as file_fd: test_env_config_yaml = yaml.safe_load(file_fd) diff --git a/functest/opnfv_tests/vnf/router/utilvnf.py b/functest/opnfv_tests/vnf/router/utilvnf.py index c31d6777..9d196836 100644 --- a/functest/opnfv_tests/vnf/router/utilvnf.py +++ b/functest/opnfv_tests/vnf/router/utilvnf.py @@ -18,10 +18,9 @@ import yaml from functest.utils.constants import CONST from git import Repo -from novaclient import client as novaclient -from keystoneauth1.identity import v3 -from keystoneauth1 import session from requests.auth import HTTPBasicAuth +from snaps.openstack.utils import nova_utils + RESULT_SPRIT_INDEX = { "transfer": 8, @@ -53,10 +52,7 @@ class Utilvnf(object): logger = logging.getLogger(__name__) def __init__(self): - self.username = "" - self.password = "" - self.auth_url = "" - self.tenant_name = "" + self.snaps_creds = "" data_dir = data_dir = CONST.__getattribute__('dir_router_data') @@ -114,31 +110,12 @@ class Utilvnf(object): self.logger.debug("removed %s" % self.test_result_json_file) def get_nova_client(self): - creds = self.get_nova_credentials() - auth = v3.Password(auth_url=creds['auth_url'], - username=creds['username'], - password=creds['password'], - project_name=creds['tenant_name'], - user_domain_id='default', - project_domain_id='default') - sess = session.Session(auth=auth) - nova_client = novaclient.Client(NOVA_CLIENT_API_VERSION, session=sess) + nova_client = nova_utils.nova_client(self.snaps_creds) return nova_client - def set_credentials(self, username, password, auth_url, tenant_name): - self.username = username - self.password = password - self.auth_url = auth_url - self.tenant_name = tenant_name - - def get_nova_credentials(self): - creds = {} - creds['username'] = self.username - creds['password'] = self.password - creds['auth_url'] = self.auth_url - creds['tenant_name'] = self.tenant_name - return creds + def set_credentials(self, snaps_creds): + self.snaps_creds = snaps_creds def get_address(self, server_name, network_name): nova_client = self.get_nova_client() diff --git a/functest/opnfv_tests/vnf/router/vnf_controller/vm_controller.py b/functest/opnfv_tests/vnf/router/vnf_controller/vm_controller.py index 50487d1c..d1c2e324 100644 --- a/functest/opnfv_tests/vnf/router/vnf_controller/vm_controller.py +++ b/functest/opnfv_tests/vnf/router/vnf_controller/vm_controller.py @@ -32,10 +32,7 @@ class VmController(object): credentials = util_info["credentials"] self.util = Utilvnf() - self.util.set_credentials(credentials["username"], - credentials["password"], - credentials["auth_url"], - credentials["tenant_name"]) + self.util.set_credentials(credentials["snaps_creds"]) with open(self.util.test_env_config_yaml) as file_fd: test_env_config_yaml = yaml.safe_load(file_fd) |