diff options
-rwxr-xr-x | ci/exec_test.sh | 8 | ||||
-rwxr-xr-x | ci/run_tests.py | 14 | ||||
-rw-r--r-- | docs/userguide/index.rst | 4 | ||||
-rw-r--r-- | docs/userguide/introduction.rst | 4 | ||||
-rwxr-xr-x | testcases/Controllers/ODL/OpenDaylightTesting.py | 45 | ||||
-rw-r--r-- | testcases/Controllers/ODL/__init__.py | 0 | ||||
-rw-r--r-- | testcases/Controllers/__init__.py | 0 | ||||
-rw-r--r-- | testcases/OpenStack/tempest/custom_tests/blacklist.txt | 14 | ||||
-rwxr-xr-x | testcases/features/sfc/set-up-tacker.sh | 1 |
9 files changed, 75 insertions, 15 deletions
diff --git a/ci/exec_test.sh b/ci/exec_test.sh index 03eb2c873..20f7c2d4f 100755 --- a/ci/exec_test.sh +++ b/ci/exec_test.sh @@ -44,20 +44,18 @@ function odl_tests(){ keystone_ip=$(openstack catalog show identity |grep publicURL| cut -f3 -d"/" | cut -f1 -d":") neutron_ip=$(openstack catalog show network | grep publicURL | cut -f3 -d"/" | cut -f1 -d":") odl_ip=${neutron_ip} - odl_port=8181 + odl_port=8080 if [ "$INSTALLER_TYPE" == "fuel" ]; then odl_port=8282 elif [ "$INSTALLER_TYPE" == "apex" ]; then odl_ip=$SDN_CONTROLLER_IP + odl_port=8181 elif [ "$INSTALLER_TYPE" == "joid" ]; then odl_ip=$SDN_CONTROLLER - odl_port=8080 - : elif [ "$INSTALLER_TYPE" == "compass" ]; then - : + odl_port=8181 else odl_ip=$SDN_CONTROLLER_IP - odl_port=8080 fi } diff --git a/ci/run_tests.py b/ci/run_tests.py index 982567217..17481780e 100755 --- a/ci/run_tests.py +++ b/ci/run_tests.py @@ -13,8 +13,10 @@ import datetime import os import re import sys + import functest.ci.generate_report as generate_report import functest.ci.tier_builder as tb +from functest.testcases.Controllers.ODL.OpenDaylightTesting import ODLTestCases import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as ft_utils import functest.utils.openstack_clean as os_clean @@ -100,9 +102,15 @@ def run_test(test, tier_name): if REPORT_FLAG: flags += " -r" - cmd = ("%s%s" % (EXEC_SCRIPT, flags)) - logger.debug("Executing command '%s'" % cmd) - result = ft_utils.execute_command(cmd, exit_on_error=False) + if test_name == 'odl': + result = ODLTestCases.functest_run() + if result and REPORT_FLAG: + result = ODLTestCases.push_to_db() + result = not result + else: + cmd = ("%s%s" % (EXEC_SCRIPT, flags)) + logger.debug("Executing command '%s'" % cmd) + result = ft_utils.execute_command(cmd, exit_on_error=False) if CLEAN_FLAG: cleanup() diff --git a/docs/userguide/index.rst b/docs/userguide/index.rst index 0e13d3547..6140f606d 100644 --- a/docs/userguide/index.rst +++ b/docs/userguide/index.rst @@ -331,13 +331,13 @@ Please refer to the dedicated feature user guides for details: * bgpvpn: ** TODO link ** * copper: ** TODO link ** - * doctor: ** TODO link ** + * doctor: http://artifacts.opnfv.org/doctor/colorado/userguide/index.html * domino: ** TODO link ** * moon: ** TODO link ** * multisites: ** TODO link ** * onos-sfc: ** TODO link ** * odl-sfc: ** TODO link ** - * promise: ** TODO link ** + * promise: http://artifacts.opnfv.org/promise/colorado/userguide/index.html security_scan ^^^^^^^^^^^^^ diff --git a/docs/userguide/introduction.rst b/docs/userguide/introduction.rst index 53b3df4ad..fc8e6680e 100644 --- a/docs/userguide/introduction.rst +++ b/docs/userguide/introduction.rst @@ -209,8 +209,8 @@ section `Executing the functest suites`_ of this document. .. _`[2]`: http://docs.openstack.org/developer/tempest/overview.html .. _`[3]`: https://rally.readthedocs.org/en/latest/index.html -.. _`Doctor User Guide`: http://artifacts.opnfv.org/opnfvdocs/brahmaputra/docs/userguide/featureusage-doctor.html -.. _`Promise User Guide`: http://artifacts.opnfv.org/promise/brahmaputra/docs/userguide/index.html +.. _`Doctor User Guide`: http://artifacts.opnfv.org/doctor/colorado/userguide/index.html +.. _`Promise User Guide`: http://artifacts.opnfv.org/promise/colorado/userguide/index.html .. _`ONOSFW User Guide`: http://artifacts.opnfv.org/onosfw/brahmaputra/docs/userguide/index.html .. _`SDNVPN User Guide`: http://artifacts.opnfv.org/sdnvpn/brahmaputra/docs/userguide/featureusage.html .. _`Domino User Guide`: http://artifacts.opnfv.org/domino/docs/userguide/index.html diff --git a/testcases/Controllers/ODL/OpenDaylightTesting.py b/testcases/Controllers/ODL/OpenDaylightTesting.py index d3bc0978b..22df9f667 100755 --- a/testcases/Controllers/ODL/OpenDaylightTesting.py +++ b/testcases/Controllers/ODL/OpenDaylightTesting.py @@ -6,6 +6,7 @@ import os import re import shutil import sys +import urlparse from robot import run from robot.api import ExecutionResult, ResultVisitor @@ -14,6 +15,7 @@ from robot.utils.robottime import timestamp_to_secs import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as ft_utils +import functest.utils.openstack_utils as op_utils class ODLResultVisitor(ResultVisitor): @@ -60,7 +62,7 @@ class ODLTestCases: except IOError as e: cls.logger.error( "Cannot copy OPNFV's testcases to ODL directory: " - "%s" % e.strerror) + "%s" % str(e)) return False return True @@ -76,7 +78,7 @@ class ODLTestCases: line.rstrip()) return True except Exception as e: - cls.logger.error("Cannot set ODL creds: %s" % e.strerror) + cls.logger.error("Cannot set ODL creds: %s" % str(e)) return False @classmethod @@ -95,7 +97,7 @@ class ODLTestCases: 'RESTCONFPORT:' + kwargs['odlrestconfport']] except KeyError as e: cls.logger.error("Cannot run ODL testcases. Please check " - "%s" % e.strerror) + "%s" % str(e)) return False if (cls.copy_opnf_testcases() and cls.set_robotframework_vars(odlusername, odlpassword)): @@ -122,6 +124,43 @@ class ODLTestCases: return False @classmethod + def functest_run(cls): + kclient = op_utils.get_keystone_client() + keystone_url = kclient.service_catalog.url_for( + service_type='identity', endpoint_type='publicURL') + neutron_url = kclient.service_catalog.url_for( + service_type='network', endpoint_type='publicURL') + kwargs = {'keystoneip': urlparse.urlparse(keystone_url).hostname} + kwargs['neutronip'] = urlparse.urlparse(neutron_url).hostname + kwargs['odlip'] = kwargs['neutronip'] + kwargs['odlwebport'] = '8080' + kwargs['odlrestconfport'] = '8181' + kwargs['odlusername'] = 'admin' + kwargs['odlpassword'] = 'admin' + try: + installer_type = os.environ['INSTALLER_TYPE'] + kwargs['osusername'] = os.environ['OS_USERNAME'] + kwargs['ostenantname'] = os.environ['OS_TENANT_NAME'] + kwargs['ospassword'] = os.environ['OS_PASSWORD'] + if installer_type == 'fuel': + kwargs['odlwebport'] = '8282' + elif installer_type == 'apex': + kwargs['odlip'] = os.environ['SDN_CONTROLLER_IP'] + kwargs['odlwebport'] = '8181' + elif installer_type == 'joid': + kwargs['odlip'] = os.environ['SDN_CONTROLLER'] + elif installer_type == 'compass': + kwargs['odlwebport'] = '8181' + else: + kwargs['odlip'] = os.environ['SDN_CONTROLLER_IP'] + except KeyError as e: + cls.logger.error("Cannot run ODL testcases. Please check env var: " + "%s" % str(e)) + return False + + return cls.run(**kwargs) + + @classmethod def push_to_db(cls): try: result = ExecutionResult(cls.res_dir + 'output.xml') diff --git a/testcases/Controllers/ODL/__init__.py b/testcases/Controllers/ODL/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/testcases/Controllers/ODL/__init__.py diff --git a/testcases/Controllers/__init__.py b/testcases/Controllers/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/testcases/Controllers/__init__.py diff --git a/testcases/OpenStack/tempest/custom_tests/blacklist.txt b/testcases/OpenStack/tempest/custom_tests/blacklist.txt index 6dd7fad5c..e26223b06 100644 --- a/testcases/OpenStack/tempest/custom_tests/blacklist.txt +++ b/testcases/OpenStack/tempest/custom_tests/blacklist.txt @@ -61,3 +61,17 @@ - tempest.scenario.test_server_basic_ops.TestServerBasicOps.test_server_basic_ops - tempest.scenario.test_volume_boot_pattern.TestVolumeBootPattern.test_volume_boot_pattern - tempest.scenario.test_volume_boot_pattern.TestVolumeBootPatternV2.test_volume_boot_pattern + +- + # https://bugs.launchpad.net/tempest/+bug/1586931 + scenarios: + - os-odl_l2-nofeature-ha + - os-odl_l2-sfc-ha + - os-odl_l3-nofeature-ha + - os-nosdn-kvm-ha + - os-nosdn-nofeature-ha + - os-nosdn-ovs-ha + installers: + - fuel + tests: + - tempest.scenario.test_server_basic_ops.TestServerBasicOps.test_server_basic_ops diff --git a/testcases/features/sfc/set-up-tacker.sh b/testcases/features/sfc/set-up-tacker.sh index e88893391..8098ad997 100755 --- a/testcases/features/sfc/set-up-tacker.sh +++ b/testcases/features/sfc/set-up-tacker.sh @@ -1,3 +1,4 @@ +apt-get install -y git-core git clone https://gerrit.opnfv.org/gerrit/fuel fuel pushd fuel git checkout e7f7abc89161441548545f79f0299610c6e5b203 |