diff options
Diffstat (limited to 'functest/opnfv_tests/sdn/odl')
-rw-r--r-- | functest/opnfv_tests/sdn/odl/odl.py | 51 |
1 files changed, 34 insertions, 17 deletions
diff --git a/functest/opnfv_tests/sdn/odl/odl.py b/functest/opnfv_tests/sdn/odl/odl.py index ab70ba10..dd313ffe 100644 --- a/functest/opnfv_tests/sdn/odl/odl.py +++ b/functest/opnfv_tests/sdn/odl/odl.py @@ -78,20 +78,20 @@ class ODLTests(testcase.TestCase): @classmethod def set_robotframework_vars(cls, odlusername="admin", odlpassword="admin"): - """Set credentials in csit/variables/Variables.py. + """Set credentials in csit/variables/Variables.robot. Returns: True if credentials are set. False otherwise. """ odl_variables_files = os.path.join(cls.odl_test_repo, - 'csit/variables/Variables.py') + 'csit/variables/Variables.robot') try: for line in fileinput.input(odl_variables_files, inplace=True): - print(re.sub("AUTH = .*", - ("AUTH = [u'" + odlusername + "', u'" + - odlpassword + "']"), + print(re.sub("@{AUTH}.*", + "@{{AUTH}} {} {}".format( + odlusername, odlpassword), line.rstrip())) return True except Exception as ex: # pylint: disable=broad-except @@ -125,7 +125,7 @@ class ODLTests(testcase.TestCase): * odlusername, * odlpassword, * osauthurl, - * neutronip, + * neutronurl, * osusername, * ostenantname, * ospassword, @@ -152,19 +152,24 @@ class ODLTests(testcase.TestCase): odlusername = kwargs['odlusername'] odlpassword = kwargs['odlpassword'] osauthurl = kwargs['osauthurl'] - keystoneip = urllib.parse.urlparse(osauthurl).hostname - variables = ['KEYSTONE:' + keystoneip, - 'NEUTRON:' + kwargs['neutronip'], + keystoneurl = "{}://{}".format( + urllib.parse.urlparse(osauthurl).scheme, + urllib.parse.urlparse(osauthurl).netloc) + variables = ['KEYSTONEURL:' + keystoneurl, + 'NEUTRONURL:' + kwargs['neutronurl'], 'OS_AUTH_URL:"' + osauthurl + '"', 'OSUSERNAME:"' + kwargs['osusername'] + '"', + ('OSUSERDOMAINNAME:"' + + kwargs['osuserdomainname'] + '"'), 'OSTENANTNAME:"' + kwargs['ostenantname'] + '"', + ('OSPROJECTDOMAINNAME:"' + + kwargs['osprojectdomainname'] + '"'), 'OSPASSWORD:"' + kwargs['ospassword'] + '"', 'ODL_SYSTEM_IP:' + kwargs['odlip'], 'PORT:' + kwargs['odlwebport'], 'RESTCONFPORT:' + kwargs['odlrestconfport']] except KeyError as ex: - self.__logger.error("Cannot run ODL testcases. Please check " - "%s", str(ex)) + self.__logger.exception("Cannot run ODL testcases. Please check") return self.EX_RUN_ERROR if self.set_robotframework_vars(odlusername, odlpassword): try: @@ -210,9 +215,10 @@ class ODLTests(testcase.TestCase): suites = kwargs["suites"] except KeyError: pass - neutron_url = op_utils.get_endpoint(service_type='network') - kwargs = {'neutronip': urllib.parse.urlparse(neutron_url).hostname} - kwargs['odlip'] = kwargs['neutronip'] + kwargs = {'neutronurl': op_utils.get_endpoint( + service_type='network')} + kwargs['odlip'] = urllib.parse.urlparse( + kwargs['neutronurl']).hostname kwargs['odlwebport'] = '8080' kwargs['odlrestconfport'] = '8181' kwargs['odlusername'] = 'admin' @@ -221,7 +227,11 @@ class ODLTests(testcase.TestCase): if 'INSTALLER_TYPE' in os.environ: installer_type = os.environ['INSTALLER_TYPE'] kwargs['osusername'] = os.environ['OS_USERNAME'] + kwargs['osuserdomainname'] = os.environ.get( + 'OS_USER_DOMAIN_NAME', 'Default') kwargs['ostenantname'] = os.environ['OS_TENANT_NAME'] + kwargs['osprojectdomainname'] = os.environ.get( + 'OS_PROJECT_DOMAIN_NAME', 'Default') kwargs['osauthurl'] = os.environ['OS_AUTH_URL'] kwargs['ospassword'] = os.environ['OS_PASSWORD'] if installer_type == 'fuel': @@ -259,18 +269,25 @@ class ODLParser(object): # pylint: disable=too-few-public-methods def __init__(self): self.parser = argparse.ArgumentParser() self.parser.add_argument( - '-n', '--neutronip', help='Neutron IP', - default='127.0.0.1') + '-n', '--neutronurl', help='Neutron Endpoint', + default='http://127.0.0.1:9696') self.parser.add_argument( '-k', '--osauthurl', help='OS_AUTH_URL as defined by OpenStack', - default='http://127.0.0.1:5000/v2.0') + default='http://127.0.0.1:5000/v3') self.parser.add_argument( '-a', '--osusername', help='Username for OpenStack', default='admin') self.parser.add_argument( + '-f', '--osuserdomainname', help='User domain name for OpenStack', + default='Default') + self.parser.add_argument( '-b', '--ostenantname', help='Tenantname for OpenStack', default='admin') self.parser.add_argument( + '-g', '--osprojectdomainname', + help='Project domain name for OpenStack', + default='Default') + self.parser.add_argument( '-c', '--ospassword', help='Password for OpenStack', default='admin') self.parser.add_argument( |