diff options
-rw-r--r-- | build.sh | 3 | ||||
-rw-r--r-- | docker/Dockerfile | 8 | ||||
-rw-r--r-- | docker/core/Dockerfile | 2 | ||||
-rw-r--r-- | docker/features/Dockerfile | 2 | ||||
-rw-r--r-- | docker/features/testcases.yaml | 17 | ||||
-rw-r--r-- | docker/parser/Dockerfile | 38 | ||||
-rw-r--r-- | docker/parser/testcases.yaml | 25 | ||||
-rw-r--r-- | docker/smoke/Dockerfile | 9 | ||||
-rw-r--r-- | docker/thirdparty-requirements.txt | 1 | ||||
-rw-r--r-- | functest/api/resources/v1/testcases.py | 6 | ||||
-rw-r--r-- | functest/ci/config_functest.yaml | 1 | ||||
-rw-r--r-- | functest/ci/testcases.yaml | 2 | ||||
-rw-r--r-- | functest/opnfv_tests/sdn/odl/odl.py | 3 | ||||
-rw-r--r-- | functest/opnfv_tests/vnf/router/cloudify_vrouter.py | 16 | ||||
-rw-r--r-- | functest/tests/unit/odl/test_odl.py | 3 | ||||
-rw-r--r-- | upper-constraints.txt | 3 |
16 files changed, 113 insertions, 26 deletions
@@ -9,7 +9,8 @@ docker/healthcheck \ docker/smoke \ docker/features \ docker/components \ -docker/vnf" +docker/vnf \ +docker/parser" (cd docker && docker build -t "${repo}/functest" .) docker push "${repo}/functest" diff --git a/docker/Dockerfile b/docker/Dockerfile index abb9b0d70..29439f8e5 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -50,6 +50,7 @@ libzmq3-dev \ python-dev \ python-mock \ python-pip \ +python3 \ postgresql \ ruby \ ruby-dev \ @@ -79,9 +80,12 @@ RUN wget -q -O- https://git.openstack.org/cgit/openstack/requirements/plain/uppe -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ -e git+https://github.com/openstack/requirements@stable/ocata#egg=openstack_requirements && \ git clone --depth 1 https://github.com/openstack/rally.git -b $RALLY_TAG /src/rally && \ - update-requirements -s --source /src/openstack-requirements /src/rally/ && \ + update-requirements -s --source /src/openstack-requirements /src/rally && \ + git clone --depth 1 https://github.com/openstack/refstack-client.git /src/refstack-client && \ + update-requirements -s --source /src/openstack-requirements /src/refstack-client && \ pip install --src /src -cupper-constraints.txt \ - -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH /src/rally/ && \ + -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ + /src/rally -e/src/refstack-client && \ pip install --src /src -cupper-constraints.txt \ -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ git+https://gerrit.opnfv.org/gerrit/functest@$BRANCH#egg=functest \ diff --git a/docker/core/Dockerfile b/docker/core/Dockerfile index 172dbb9fa..c5766da30 100644 --- a/docker/core/Dockerfile +++ b/docker/core/Dockerfile @@ -19,7 +19,7 @@ RUN apk --no-cache add --update \ git clone --depth 1 https://github.com/openstack/rally.git -b $RALLY_TAG /src/rally && \ update-requirements -s --source /src/openstack-requirements /src/rally/ && \ pip install --no-cache-dir --src /src -cupper-constraints.txt \ - -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH /src/rally/ && \ + -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH /src/rally && \ pip install --no-cache-dir --src /src -cupper-constraints.txt \ -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ git+https://gerrit.opnfv.org/gerrit/functest@$BRANCH#egg=functest && \ diff --git a/docker/features/Dockerfile b/docker/features/Dockerfile index e1214c1e8..c3b1b041d 100644 --- a/docker/features/Dockerfile +++ b/docker/features/Dockerfile @@ -4,7 +4,7 @@ ARG BRANCH=master ARG OPENSTACK_TAG=stable/ocata COPY thirdparty-requirements.txt thirdparty-requirements.txt -RUN apk --no-cache add --update nodejs nodejs-npm && \ +RUN apk --no-cache add --update nodejs nodejs-npm python3 && \ apk --no-cache add --virtual .build-deps --update \ python-dev build-base linux-headers libffi-dev \ openssl-dev libjpeg-turbo-dev git && \ diff --git a/docker/features/testcases.yaml b/docker/features/testcases.yaml index b7cf81a8a..273a20e77 100644 --- a/docker/features/testcases.yaml +++ b/docker/features/testcases.yaml @@ -24,6 +24,23 @@ tiers: cmd: 'run_promise_tests.py' - + case_name: doctor-notification + enabled: false + project_name: doctor + criteria: 100 + blocking: false + description: >- + Test suite from Doctor project. + dependencies: + installer: '(apex)|(fuel)' + scenario: '^((?!fdio).)*$' + run: + module: 'functest.core.feature' + class: 'BashFeature' + args: + cmd: '(cd /src/doctor-test/tests && run.sh)' + + - case_name: bgpvpn project_name: sdnvpn criteria: 100 diff --git a/docker/parser/Dockerfile b/docker/parser/Dockerfile new file mode 100644 index 000000000..e0dc0d5cd --- /dev/null +++ b/docker/parser/Dockerfile @@ -0,0 +1,38 @@ +FROM alpine:3.6 + +ARG BRANCH=master +ARG OPENSTACK_TAG=stable/pike +ARG RALLY_TAG=stable/0.9 + +RUN apk --no-cache add --update \ + python libffi libssl1.0 libjpeg-turbo py-pip bash \ + grep sed wget ca-certificates git openssh-client && \ + apk --no-cache add --virtual .build-deps --update \ + python-dev build-base linux-headers libffi-dev \ + openssl-dev libjpeg-turbo-dev && \ + wget -q -O- https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG | \ + sed /^heat-translator=/d | sed /^tosca-parser=/d \ + > upper-constraints.txt && \ + pip install --src /src -cupper-constraints.txt \ + -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ + -e git+https://github.com/openstack/requirements@stable/ocata#egg=openstack_requirements && \ + git clone --depth 1 https://github.com/openstack/rally.git -b $RALLY_TAG /src/rally && \ + update-requirements -s --source /src/openstack-requirements /src/rally && \ + pip install --src /src -cupper-constraints.txt \ + -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ + /src/rally && \ + pip install --no-cache-dir --src /src \ + -cupper-constraints.txt \ + -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ + git+https://gerrit.opnfv.org/gerrit/functest@$BRANCH#egg=functest \ + git+https://gerrit.opnfv.org/gerrit/parser#egg=heat-translator\&subdirectory=tosca2heat/heat-translator \ + git+https://gerrit.opnfv.org/gerrit/parser#egg=nfv-toscaparser\&subdirectory=tosca2heat/tosca-parser \ + -e git+https://gerrit.opnfv.org/gerrit/parser#egg=nfv-parser && \ + rm -r upper-constraints.txt /src/rally/.git && \ + mkdir -p /etc/rally && \ + printf "[database]\nconnection = 'sqlite:////var/lib/rally/database/rally.sqlite'" > /etc/rally/rally.conf && \ + mkdir -p /var/lib/rally/database && rally-manage db create && \ + bash -c "mkdir -p /home/opnfv/functest{/conf,/data,/images,/results} /home/opnfv/repos/vnfs" && \ + apk del .build-deps +COPY testcases.yaml /usr/lib/python2.7/site-packages/functest/ci/testcases.yaml +CMD ["bash","-c","prepare_env start && run_tests -t all"] diff --git a/docker/parser/testcases.yaml b/docker/parser/testcases.yaml new file mode 100644 index 000000000..4ab3fae2b --- /dev/null +++ b/docker/parser/testcases.yaml @@ -0,0 +1,25 @@ +tiers: + - + name: features + order: 2 + ci_loop: '(daily)|(weekly)' + description : >- + Test suites from feature projects + integrated in functest + testcases: + - + case_name: parser-basics + enabled: false + project_name: parser + criteria: 100 + blocking: false + description: >- + Test suite from Parser project. + dependencies: + installer: 'fuel' + scenario: '^((?!bgpvpn|noha).)*$' + run: + module: 'functest.core.feature' + class: 'BashFeature' + args: + cmd: 'cd /src/nfv-parser/tests && ./functest_run.sh' diff --git a/docker/smoke/Dockerfile b/docker/smoke/Dockerfile index 103854703..26a473800 100644 --- a/docker/smoke/Dockerfile +++ b/docker/smoke/Dockerfile @@ -3,17 +3,24 @@ FROM opnfv/functest-core ARG BRANCH=master ARG OPENSTACK_TAG=stable/ocata ARG ODL_TAG=release/carbon +ARG FDS_TAG=master COPY thirdparty-requirements.txt thirdparty-requirements.txt RUN apk --no-cache add --virtual .build-deps --update \ python-dev build-base linux-headers libffi-dev \ openssl-dev libjpeg-turbo-dev git && \ + git clone --depth 1 https://github.com/openstack/refstack-client.git /src/refstack-client && \ + update-requirements -s --source /src/openstack-requirements /src/refstack-client/ && \ + pip install --no-cache-dir --src /src \ + -chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG \ + -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ + -e/src/refstack-client && \ pip install --no-cache-dir --src /src \ -chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG \ -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \ -rthirdparty-requirements.txt && \ git clone --depth 1 -b $ODL_TAG https://git.opendaylight.org/gerrit/p/integration/test.git /src/odl_test && \ - git clone --depth 1 -b $BRANCH https://gerrit.opnfv.org/gerrit/fds /src/fds && \ + git clone --depth 1 -b $FDS_TAG https://gerrit.opnfv.org/gerrit/fds /src/fds && \ ln -s /src/tempest /src/refstack-client/.tempest && \ virtualenv --system-site-packages /src/tempest/.venv && \ rm -r thirdparty-requirements.txt /src/refstack-client/.git /src/odl_test/.git \ diff --git a/docker/thirdparty-requirements.txt b/docker/thirdparty-requirements.txt index 60bd0f28f..cc8f5f9c8 100644 --- a/docker/thirdparty-requirements.txt +++ b/docker/thirdparty-requirements.txt @@ -3,6 +3,7 @@ sdnvpn securityscanning sfc promise +doctor-test tosca-parser>=0.7.0 # Apache-2.0 heat-translator>=0.4.0 # Apache-2.0 refstack-client diff --git a/functest/api/resources/v1/testcases.py b/functest/api/resources/v1/testcases.py index b7d7b4aa3..cc2d4e193 100644 --- a/functest/api/resources/v1/testcases.py +++ b/functest/api/resources/v1/testcases.py @@ -89,8 +89,8 @@ class V1Testcase(ApiResource): task_thread = thread.TaskThread(self._run, task_args, TasksHandler()) task_thread.start() - results = {'testcase': case_name, 'task_id': task_id} - return jsonify(results) + result = {'testcase': case_name, 'task_id': task_id} + return jsonify({'result': result}) def _run(self, args): # pylint: disable=no-self-use """ The built_in function to run a test case """ @@ -120,7 +120,7 @@ class V1Testcase(ApiResource): } result = { 'task_id': args.get('task_id'), - 'case_name': case_name, + 'testcase': case_name, 'env_info': env_info, 'result': result } diff --git a/functest/ci/config_functest.yaml b/functest/ci/config_functest.yaml index 5ff5c824e..cfcc728a2 100644 --- a/functest/ci/config_functest.yaml +++ b/functest/ci/config_functest.yaml @@ -7,7 +7,6 @@ general: dir_repo_releng: /home/opnfv/repos/releng repo_vims_test: /src/vims-test repo_barometer: /home/opnfv/repos/barometer - repo_doctor: /home/opnfv/repos/doctor repo_odl_test: /src/odl_test repo_fds: /src/fds repo_securityscan: /home/opnfv/repos/securityscanning diff --git a/functest/ci/testcases.yaml b/functest/ci/testcases.yaml index 64bcf6162..0dce47e30 100644 --- a/functest/ci/testcases.yaml +++ b/functest/ci/testcases.yaml @@ -266,7 +266,7 @@ tiers: module: 'functest.core.feature' class: 'BashFeature' args: - cmd: 'cd /home/opnfv/repos/doctor/tests && ./run.sh' + cmd: '(cd /src/doctor-test/tests && run.sh)' - case_name: bgpvpn diff --git a/functest/opnfv_tests/sdn/odl/odl.py b/functest/opnfv_tests/sdn/odl/odl.py index 841da834b..ab70ba107 100644 --- a/functest/opnfv_tests/sdn/odl/odl.py +++ b/functest/opnfv_tests/sdn/odl/odl.py @@ -225,7 +225,8 @@ class ODLTests(testcase.TestCase): kwargs['osauthurl'] = os.environ['OS_AUTH_URL'] kwargs['ospassword'] = os.environ['OS_PASSWORD'] if installer_type == 'fuel': - kwargs['odlwebport'] = '8282' + kwargs['odlwebport'] = '8181' + kwargs['odlrestconfport'] = '8282' elif installer_type == 'apex' or installer_type == 'netvirt': kwargs['odlip'] = os.environ['SDN_CONTROLLER_IP'] kwargs['odlwebport'] = '8081' diff --git a/functest/opnfv_tests/vnf/router/cloudify_vrouter.py b/functest/opnfv_tests/vnf/router/cloudify_vrouter.py index c3cccb989..edbdb495f 100644 --- a/functest/opnfv_tests/vnf/router/cloudify_vrouter.py +++ b/functest/opnfv_tests/vnf/router/cloudify_vrouter.py @@ -25,7 +25,6 @@ import functest.utils.openstack_utils as os_utils from git import Repo -from snaps.openstack.os_credentials import OSCreds from snaps.openstack.create_network import (NetworkSettings, SubnetSettings, OpenStackNetwork) from snaps.openstack.create_security_group import (SecurityGroupSettings, @@ -110,17 +109,10 @@ class CloudifyVrouter(vrouter_base.VrouterOnBoardingBase): self.__logger.info("Additional pre-configuration steps") - self.snaps_creds = OSCreds( - username=self.creds['username'], - password=self.creds['password'], - auth_url=self.creds['auth_url'], - project_name=self.creds['tenant'], - identity_api_version=int(os_utils.get_keystone_client_version())) - - self.util.set_credentials(self.creds["username"], - self.creds["password"], - self.creds["auth_url"], - self.creds["tenant"]) + self.util.set_credentials(self.snaps_creds.username, + self.snaps_creds.password, + self.snaps_creds.auth_url, + self.snaps_creds.project_name) # needs some images self.__logger.info("Upload some OS images if it doesn't exist") diff --git a/functest/tests/unit/odl/test_odl.py b/functest/tests/unit/odl/test_odl.py index 8aeea41de..878d47dda 100644 --- a/functest/tests/unit/odl/test_odl.py +++ b/functest/tests/unit/odl/test_odl.py @@ -462,7 +462,8 @@ class ODLRunTesting(ODLTesting): def test_fuel(self): os.environ["INSTALLER_TYPE"] = "fuel" self._test_run(testcase.TestCase.EX_OK, - odlip=self._neutron_ip, odlwebport='8282') + odlip=self._neutron_ip, odlwebport='8181', + odlrestconfport='8282') def test_apex_no_controller_ip(self): with mock.patch('functest.utils.openstack_utils.get_endpoint', diff --git a/upper-constraints.txt b/upper-constraints.txt index f189a2a5f..62a460a1d 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -5,7 +5,7 @@ git+https://gerrit.opnfv.org/gerrit/sdnvpn#egg=sdnvpn git+https://gerrit.opnfv.org/gerrit/securityscanning#egg=securityscanning git+https://gerrit.opnfv.org/gerrit/sfc#egg=sfc -e git+https://gerrit.opnfv.org/gerrit/promise#egg=promise --e git+https://github.com/openstack/refstack-client#egg=refstack-client +-e git+https://gerrit.opnfv.org/gerrit/doctor#egg=doctor-test git+https://gerrit.opnfv.org/gerrit/domino#egg=domino cloudify-rest-client===4.0 iniparse===0.4 @@ -15,3 +15,4 @@ robotframework-httplibrary===0.4.2 robotframework-requests===0.4.7 robotframework-sshlibrary===2.1.3;python_version=='2.7' IPy===0.83 +os-faults===0.1.10 |