From 517a1a238924e28164d28893cbbb4ac0fe6e2dcb Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Mon, 7 Aug 2017 20:27:29 +0200 Subject: Integrate cloudify_ims in functest-features MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We only rely on system libraries in case of Alpine. It's not possible in case of Ubuntu 14.04 because libxml is too old. Change-Id: I304f8ea5e9a6541e9719210db9d07949107bf193 Signed-off-by: Cédric Ollivier --- docker/Dockerfile | 22 +++++----------------- docker/vnf/Dockerfile | 12 ++++++++++++ docker/vnf/hooks/post_checkout | 6 ++++++ docker/vnf/testcases.yaml | 22 ++++++++++++++++++++++ functest/ci/config_functest.yaml | 2 +- .../opnfv_tests/vnf/ims/clearwater_ims_base.py | 1 - 6 files changed, 46 insertions(+), 19 deletions(-) create mode 100644 docker/vnf/Dockerfile create mode 100644 docker/vnf/hooks/post_checkout create mode 100644 docker/vnf/testcases.yaml diff --git a/docker/Dockerfile b/docker/Dockerfile index 910be8396..8173bea05 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -52,7 +52,9 @@ python-dev \ python-mock \ python-pip \ postgresql \ -ruby1.9.1-dev \ +ruby \ +ruby-dev \ +ruby-bundler \ ssh \ sshpass \ wget \ @@ -90,13 +92,10 @@ RUN git clone --depth 1 -b $BRANCH https://gerrit.opnfv.org/gerrit/fds /src/fds # other repositories RUN git clone --depth 1 -b $ODL_TAG https://git.opendaylight.org/gerrit/p/integration/test.git /src/odl_test -RUN git clone --depth 1 -b $VIMS_TAG https://github.com/boucherv-orange/clearwater-live-test ${REPOS_VNFS_DIR}/vims-test +RUN git clone --depth 1 -b $VIMS_TAG https://github.com/boucherv-orange/clearwater-live-test /src/vims-test RUN git clone --depth 1 -b $VROUTER_TAG https://github.com/oolorg/opnfv-functest-vrouter.git ${REPOS_VNFS_DIR}/vrouter RUN git clone --depth 1 https://github.com/wuwenbin2/OnosSystemTest.git ${REPOS_DIR}/onos -RUN gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 -RUN curl -L https://get.rvm.io | bash -s stable - # SFC integration RUN /bin/bash -c ". /usr/local/lib/python2.7/dist-packages/sfc/tests/functest/setup_scripts/tacker_client_install.sh" @@ -104,18 +103,7 @@ RUN /bin/bash -c ". /usr/local/lib/python2.7/dist-packages/sfc/tests/functest/se RUN ln -s /src/tempest /src/refstack-client/.tempest \ && virtualenv --system-site-packages /src/tempest/.venv -RUN /bin/bash -c ". /etc/profile.d/rvm.sh \ - && cd ${REPOS_VNFS_DIR}/vims-test \ - && rvm autolibs enable" -RUN /bin/bash -c ". /etc/profile.d/rvm.sh \ - && cd ${REPOS_VNFS_DIR}/vims-test \ - && rvm install 1.9.3" -RUN /bin/bash -c ". /etc/profile.d/rvm.sh \ - && cd ${REPOS_VNFS_DIR}/vims-test \ - && rvm use 1.9.3" -RUN /bin/bash -c ". /etc/profile.d/rvm.sh \ - && cd ${REPOS_VNFS_DIR}/vims-test \ - && bundle install" +RUN cd /src/vims-test && bundle install RUN sh -c 'curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -' \ && sudo apt-get install -y nodejs \ diff --git a/docker/vnf/Dockerfile b/docker/vnf/Dockerfile new file mode 100644 index 000000000..70c13ab29 --- /dev/null +++ b/docker/vnf/Dockerfile @@ -0,0 +1,12 @@ +FROM opnfv/functest-core + +ARG VIMS_TAG=stable + +RUN apk --no-cache add --update \ + ruby ruby-dev ruby-bundler ruby-irb ruby-rdoc \ + procps git g++ make libxslt-dev libxml2-dev zlib-dev libffi-dev && \ + git clone --depth 1 -b $VIMS_TAG https://github.com/boucherv-orange/clearwater-live-test /src/vims-test && \ + rm -r /src/vims-test/.git && \ + cd /src/vims-test && bundle config build.nokogiri --use-system-libraries && bundle install --system +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/vnf/hooks/post_checkout b/docker/vnf/hooks/post_checkout new file mode 100644 index 000000000..20a6d4b95 --- /dev/null +++ b/docker/vnf/hooks/post_checkout @@ -0,0 +1,6 @@ +#!/bin/bash + +from="${DOCKER_REPO%/*}/functest-core" +sed -i "s|^FROM.*$|FROM ${from}|" Dockerfile + +exit $? diff --git a/docker/vnf/testcases.yaml b/docker/vnf/testcases.yaml new file mode 100644 index 000000000..4e05c2128 --- /dev/null +++ b/docker/vnf/testcases.yaml @@ -0,0 +1,22 @@ +tiers: + - + name: vnf + order: 4 + ci_loop: 'daily' + description : >- + Collection of VNF test cases. + testcases: + - + case_name: cloudify_ims + project_name: functest + criteria: 100 + blocking: false + description: >- + This test case deploys an OpenSource vIMS solution from Clearwater + using the Cloudify orchestrator. It also runs some signaling traffic. + dependencies: + installer: '' + scenario: 'os-nosdn-nofeature-ha' + run: + module: 'functest.opnfv_tests.vnf.ims.cloudify_ims' + class: 'CloudifyIms' diff --git a/functest/ci/config_functest.yaml b/functest/ci/config_functest.yaml index 679140fe8..e2569eb12 100644 --- a/functest/ci/config_functest.yaml +++ b/functest/ci/config_functest.yaml @@ -5,7 +5,7 @@ general: dir_repo_rally: /home/opnfv/repos/rally repo_tempest: /src/tempest dir_repo_releng: /home/opnfv/repos/releng - repo_vims_test: /home/opnfv/repos/vnfs/vims-test + repo_vims_test: /src/vims-test repo_onos: /home/opnfv/repos/onos repo_barometer: /home/opnfv/repos/barometer repo_doctor: /home/opnfv/repos/doctor diff --git a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py index 5a5c12bee..1c3f69c6d 100644 --- a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py +++ b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py @@ -117,7 +117,6 @@ class ClearwaterOnBoardingBase(vnf.VnfOnBoarding): dns_file_bak = '/etc/resolv.conf.bak' shutil.copy(dns_file, dns_file_bak) script = ('echo -e "nameserver {0}{1}" > {2};' - 'source /etc/profile.d/rvm.sh;' 'cd {3};' 'rake test[{4}] SIGNUP_CODE={5}' .format(dns_ip, -- cgit 1.2.3-korg