concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 5
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 5
- compare-type: ANT
pattern: 'tests/**'
properties:
+ - logrotate-default
- throttle:
max-per-node: 1
max-total: 10
pattern: 'config/**'
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
- git-scm
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
blocking-jobs:
- git-scm
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: false
block-level: 'NODE'
- git-scm
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
description: "Scenario to deploy with."
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
gs-pathname: '{gs-pathname}'
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
- git-scm
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
description: "Scenario to deploy with."
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
gs-pathname: '/colorado'
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
block-level: 'NODE'
concurrent: false
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: false
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 6
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 3
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 3
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 6
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 6
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: false
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: false
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 2
disabled: '{obj:disabled}'
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
concurrent: false
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 6
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 6
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
name: INSTALLER_TYPE
default: joid
description: 'Installer used for deploying OPNFV on this POD'
+ - string:
+ name: MODEL
+ default: 'os'
+ description: 'Model to deploy (os|k8)'
- string:
name: OS_RELEASE
default: 'newton'
- defaults:
name: global
- logrotate:
- daysToKeep: 60
- numToKeep: 200
- artifactDaysToKeep: 30
- artifactNumToKeep: 100
-
wrappers:
- ssh-agent-wrapper
project-type: freestyle
node: master
+
+ properties:
+ - logrotate-default
default: '{branch}'
description: "JJB configured GERRIT_BRANCH parameter"
+- property:
+ name: logrotate-default
+ properties:
+ - build-discarder:
+ days-to-keep: 60
+ num-to-keep: 200
+ artifact-days-to-keep: 60
+ artifact-num-to-keep: 200
+
- scm:
name: git-scm
scm:
- string:
name: GIT_BASE
default: https://gerrit.opnfv.org/gerrit/$PROJECT
+- parameter:
+ name: 'huawei-virtual7-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - huawei-virtual7
+ default-slaves:
+ - huawei-virtual7
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
- parameter:
name: 'huawei-pod7-defaults'
parameters:
concurrent: false
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
blocking-jobs:
gsutil -q cp -Z ${WORKSPACE}/build_log.txt ${BIFROST_GS_URL}/build_log.txt
rm ${WORKSPACE}/build_log.txt
- [[ ! -d ${WORKSPACE}/logs ]] && exit 0
-
- pushd ${WORKSPACE}/logs/ &> /dev/null
- for x in *.log; do
- echo "Compressing and uploading $x"
- gsutil -q cp -Z ${x} ${BIFROST_GS_URL}/${x}
- done
+ if [[ -d ${WORKSPACE}/logs ]]; then
+ pushd ${WORKSPACE}/logs &> /dev/null
+ for x in *.log; do
+ echo "Compressing and uploading $x"
+ gsutil -q cp -Z ${x} ${BIFROST_GS_URL}/${x}
+ done
+ popd &> /dev/null
+ fi
echo "Generating the landing page"
- cat > index.html <<EOF
+ cat > ${WORKSPACE}/index.html <<EOF
<html>
<h1>Build results for <a href=https://$GERRIT_NAME/#/c/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER>$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER</a></h1>
<h2>Job: $JOB_NAME</h2>
<li><a href=${BIFROST_LOG_URL}/build_log.txt>build_log.txt</a></li>
EOF
- for x in *.log; do
- echo "<li><a href=${BIFROST_LOG_URL}/${x}>${x}</a></li>" >> index.html
- done
+ if [[ -d ${WORKSPACE}/logs ]]; then
+ pushd ${WORKSPACE}/logs &> /dev/null
+ for x in *.log; do
+ echo "<li><a href=${BIFROST_LOG_URL}/${x}>${x}</a></li>" >> ${WORKSPACE}/index.html
+ done
+ popd &> /dev/null
+ fi
- cat >> index.html << EOF
+ cat >> ${WORKSPACE}/index.html << EOF
</ul>
</html>
EOF
- gsutil -q cp index.html ${BIFROST_GS_URL}/index.html
-
- rm index.html
+ gsutil -q cp ${WORKSPACE}/index.html ${BIFROST_GS_URL}/index.html
- popd &> /dev/null
+ rm ${WORKSPACE}/index.html
}
function fix_ownership() {
auto-trigger-name: 'daily-trigger-disabled'
- 'os-ocl-nofeature-noha':
auto-trigger-name: 'daily-trigger-disabled'
+ - 'k8-nosdn-nofeature-noha':
+ auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
+ - 'k8-nosdn-lb-noha':
+ auto-trigger-name: 'daily-trigger-disabled'
jobs:
- 'joid-{scenario}-{pod}-daily-{stream}'
concurrent: false
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
name: 'joid-os-nosdn-nofeature-noha-orange-pod1-danube-trigger'
triggers:
- timed: ''
+# k8-nosdn-nofeature-noha trigger - branch: master
+- trigger:
+ name: 'joid-k8-nosdn-nofeature-noha-baremetal-master-trigger'
+ triggers:
+ - timed: '5 15 * * *'
+- trigger:
+ name: 'joid-k8-nosdn-nofeature-noha-virtual-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'joid-k8-nosdn-nofeature-noha-orange-pod1-master-trigger'
+ triggers:
+ - timed: ''
+# k8-nosdn-nofeature-noha trigger - branch: danube
+- trigger:
+ name: 'joid-k8-nosdn-nofeature-noha-baremetal-danube-trigger'
+ triggers:
+ - timed: '0 15 * * *'
+- trigger:
+ name: 'joid-k8-nosdn-nofeature-noha-virtual-danube-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'joid-k8-nosdn-nofeature-noha-orange-pod1-danube-trigger'
+ triggers:
+ - timed: ''
+# k8-nosdn-lb-noha trigger - branch: master
+- trigger:
+ name: 'joid-k8-nosdn-lb-noha-baremetal-master-trigger'
+ triggers:
+ - timed: '5 20 * * *'
+- trigger:
+ name: 'joid-k8-nosdn-lb-noha-virtual-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'joid-k8-nosdn-lb-noha-orange-pod1-master-trigger'
+ triggers:
+ - timed: ''
+# k8-nosdn-lb-noha trigger - branch: danube
+- trigger:
+ name: 'joid-k8-nosdn-lb-noha-baremetal-danube-trigger'
+ triggers:
+ - timed: '0 20 * * *'
+- trigger:
+ name: 'joid-k8-nosdn-lb-noha-virtual-danube-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'joid-k8-nosdn-lb-noha-orange-pod1-danube-trigger'
+ triggers:
+ - timed: ''
# Based on scenario naming we can get joid options
# naming convention:
-# os-<controller>-<nfvfeature>-<mode>[-<extrastuff>]
+# <model>-<controller>-<nfvfeature>-<mode>[-<extrastuff>]
# With parameters:
+# model=(os|k8)
# controller=(nosdn|odl_l3|odl_l2|onos|ocl)
# No odl_l3 today
# nfvfeature=(kvm|ovs|dpdk|nofeature)
IFS='-' read -r -a DEPLOY_OPTIONS <<< "${DEPLOY_SCENARIO}--"
#last -- need to avoid nounset error
+JOID_MODEL=${DEPLOY_OPTIONS[0]}
SDN_CONTROLLER=${DEPLOY_OPTIONS[1]}
NFV_FEATURES=${DEPLOY_OPTIONS[2]}
HA_MODE=${DEPLOY_OPTIONS[3]}
## Configure Joid deployment
##
-echo "------ Deploy with juju ------"
-echo "Execute: ./deploy.sh -t $HA_MODE -o $OS_RELEASE -s $SDN_CONTROLLER -l $POD_NAME -d $UBUNTU_DISTRO -f $NFV_FEATURES"
+if [ "$JOID_MODEL" == 'k8' ]; then
+ echo "------ Deploy with juju ------"
+ echo "Execute: ./deploy.sh -m $JOID_MODEL -s $SDN_CONTROLLER -l $POD_NAME -d $UBUNTU_DISTRO -f $NFV_FEATURES"
-./deploy.sh -t $HA_MODE -o $OS_RELEASE -s $SDN_CONTROLLER -l $POD_NAME -d $UBUNTU_DISTRO -f $NFV_FEATURES
-exit_on_error $? "Main deploy FAILED"
+ ./deploy.sh -m kubernetes -s $SDN_CONTROLLER -l $POD_NAME -d $UBUNTU_DISTRO -f $NFV_FEATURES
+ exit_on_error $? "Main deploy FAILED"
+fi
##
## Set Admin RC
##
-JOID_ADMIN_OPENRC=$LAB_CONFIG/admin-openrc
-echo "------ Create OpenRC file [$JOID_ADMIN_OPENRC] ------"
-
-# get controller IP
-case "$SDN_CONTROLLER" in
- "odl")
- SDN_CONTROLLER_IP=$(juju status odl-controller/0 |grep public-address|sed -- 's/.*\: //')
- ;;
- "onos")
- SDN_CONTROLLER_IP=$(juju status onos-controller/0 |grep public-address|sed -- 's/.*\: //')
- ;;
- *)
- SDN_CONTROLLER_IP='none'
- ;;
-esac
-SDN_PASSWORD='admin'
-
-# export the openrc file by getting the one generated by joid and add SDN
-# controller for Functest
-cp ./cloud/admin-openrc $JOID_ADMIN_OPENRC
-cat << EOF >> $JOID_ADMIN_OPENRC
-export SDN_CONTROLLER=$SDN_CONTROLLER_IP
-export SDN_PASSWORD=$SDN_PASSWORD
-EOF
-
-##
-## Backup local juju env
-##
+if [ "$JOID_MODEL" == 'os' ]; then
+ echo "------ Deploy with juju ------"
+ echo "Execute: ./deploy.sh -m $JOID_MODEL -t $HA_MODE -o $OS_RELEASE -s $SDN_CONTROLLER -l $POD_NAME -d $UBUNTU_DISTRO -f $NFV_FEATURES"
+
+ ./deploy.sh -m openstack -t $HA_MODE -o $OS_RELEASE -s $SDN_CONTROLLER -l $POD_NAME -d $UBUNTU_DISTRO -f $NFV_FEATURES
+ exit_on_error $? "Main deploy FAILED"
+
+ JOID_ADMIN_OPENRC=$LAB_CONFIG/admin-openrc
+ echo "------ Create OpenRC file [$JOID_ADMIN_OPENRC] ------"
+
+ # get controller IP
+ case "$SDN_CONTROLLER" in
+ "odl")
+ SDN_CONTROLLER_IP=$(juju status odl-controller/0 |grep public-address|sed -- 's/.*\: //')
+ ;;
+ "onos")
+ SDN_CONTROLLER_IP=$(juju status onos-controller/0 |grep public-address|sed -- 's/.*\: //')
+ ;;
+ *)
+ SDN_CONTROLLER_IP='none'
+ ;;
+ esac
+ SDN_PASSWORD='admin'
+
+ # export the openrc file by getting the one generated by joid and add SDN
+ # controller for Functest
+ cp ./cloud/admin-openrc $JOID_ADMIN_OPENRC
+ cat << EOF >> $JOID_ADMIN_OPENRC
+ export SDN_CONTROLLER=$SDN_CONTROLLER_IP
+ export SDN_PASSWORD=$SDN_PASSWORD
+ EOF
+
+ ##
+ ## Backup local juju env
+ ##
+
+ echo "------ Backup Juju environment ------"
+ cp environments.yaml $LAB_CONFIG/
+ cp deployment.yaml $LAB_CONFIG/
+ if [ -e deployconfig.yaml ]; then
+ cp deployconfig.yaml $LAB_CONFIG
+ fi
-echo "------ Backup Juju environment ------"
-cp environments.yaml $LAB_CONFIG/
-cp deployment.yaml $LAB_CONFIG/
-if [ -e deployconfig.yaml ]; then
- cp deployconfig.yaml $LAB_CONFIG
fi
##
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 4
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 3
concurrent: false
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - 'huawei-pod7-defaults'
+ - 'huawei-virtual7-defaults'
+ - 'compass-defaults'
+ - 'opera-compass-parameter'
builders:
- description-setter:
name: deploy
condition: SUCCESSFUL
projects:
- - name: 'opera-daily-deploy-{stream}'
+ - name: 'compass-deploy-virtual-daily-{stream}'
current-parameters: true
node-parameters: true
kill-phase-on: FAILURE
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
#!/bin/bash
echo "Hello world!"
+########################
+# parameter macros
+########################
+- parameter:
+ name: opera-compass-parameter
+ parameters:
+ - string:
+ name: BUILD_DIRECTORY
+ default: $WORKSPACE/build_output
+ description: "Directory where the build artifact will be located upon the completion of the build."
+ - string:
+ name: GS_URL
+ default: '$GS_BASE{gs-pathname}'
+ description: "URL to Google Storage."
+ - choice:
+ name: COMPASS_OPENSTACK_VERSION
+ choices:
+ - 'newton'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: 'os-nosdn-openo-noha'
+ - string:
+ name: COMPASS_OS_VERSION
+ default: 'xenial'
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-total: 1
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
stream: danube
branch: 'stable/{stream}'
disabled: true
+ functest-receivers: &functest-receivers
+ receivers: >
+ jose.lausuch@ericsson.com morgan.richomme@orange.com
+ cedric.ollivier@orange.com feng.xiaowei@zte.com.cn
+ yaohelan@huawei.com helanyao@gmail.com
+ juha.kosonen@nokia.com
+ other-receivers: &other-receivers
+ receivers: ''
project:
# projects with jobs for master
- 'bottlenecks':
<<: *master
+ <<: *other-receivers
- 'cperf':
<<: *master
+ <<: *other-receivers
- 'dovetail':
<<: *master
+ <<: *other-receivers
- 'functest':
<<: *master
+ <<: *functest-receivers
- 'qtip':
<<: *master
+ <<: *other-receivers
- 'storperf':
<<: *master
+ <<: *other-receivers
- 'yardstick':
<<: *master
+ <<: *other-receivers
# projects with jobs for stable
- 'bottlenecks':
<<: *danube
+ <<: *other-receivers
- 'functest':
<<: *danube
+ <<: *functest-receivers
- 'storperf':
<<: *danube
+ <<: *other-receivers
- 'yardstick':
<<: *danube
+ <<: *other-receivers
jobs:
- '{project}-docker-build-push-{stream}'
- pollscm:
cron: "*/30 * * * *"
+ publishers:
+ - email:
+ recipients: '{receivers}'
+
- job-template:
name: '{project}-docker-build-push-monitor-{stream}'
disabled: '{obj:disabled}'
- 'opnfv-build-ubuntu-defaults'
scm:
- - git-scm
+ - git-scm-gerrit
triggers:
- gerrit:
branch-pattern: '**/{branch}'
file-paths:
- compare-type: 'ANT'
- pattern: 'utils/**'
+ pattern: 'utils/test/testapi/**'
builders:
- run-unit-tests
builders:
- docker-update
- - start-testapi-server
- testapi-doc-build
- upload-doc-artifact
- - clean-testapi-server
################################
# job builders
- shell: |
bash ./jjb/releng/testapi-docker-update.sh
-- builder:
- name: start-testapi-server
- builders:
- - shell: |
- bash ./utils/test/testapi/htmlize/prepare.sh
-
- builder:
name: testapi-doc-build
builders:
builders:
- shell: |
bash ./utils/test/testapi/htmlize/push-doc-artifact.sh
-
-- builder:
- name: clean-testapi-server
- builders:
- - shell: |
- bash ./utils/test/testapi/htmlize/finish.sh
concurrent: true
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
blocking-jobs:
concurrent: true
properties:
+ - logrotate-default
- build-blocker:
use-build-blocker: true
blocking-jobs:
concurrent: true
properties:
+ - logrotate-default
- throttle:
enabled: true
max-per-node: 1
source $WORKSPACE/yardstick_venv/bin/activate
# install python packages
- easy_install -U setuptools
+ easy_install -U setuptools==33.1.1
easy_install -U pip
pip install -r requirements.txt || pip install -r tests/ci/requirements.txt
pip install -e .
# but sometimes the output of endpoint-list is like this: http://172.30.9.70:8004/v1/%(tenant_id)s
# Fuel virtual need a fix
+ #convert to v3 URL
+ auth_url=$(cat $dest_path|grep AUTH_URL)
+ if [[ -z `echo $auth_url |grep v3` ]]; then
+ auth_url=$(echo $auth_url |sed "s|'$|v3&|")
+ fi
+ sed -i '/AUTH_URL/d' $dest_path
+ echo $auth_url >> $dest_path
+
elif [ "$installer_type" == "apex" ]; then
verify_connectivity $installer_ip
set -o errexit
# Create virtual environment
+virtualenv $WORKSPACE/testapi_venv
source $WORKSPACE/testapi_venv/bin/activate
+# Swgger Codegen Tool
+url="http://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.2.1/swagger-codegen-cli-2.2.1.jar"
+
+# Check for jar file locally and in the repo
+if [ ! -f swagger-codegen-cli.jar ];
+then
+ wget http://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.2.1/swagger-codegen-cli-2.2.1.jar -O swagger-codegen-cli.jar
+fi
+
# Install Pre-requistics
pip install requests
+++ /dev/null
-#!/bin/bash
-
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-
-# Stop opnfv-testapi server
-proc_number=`ps -ef | grep opnfv-testapi | grep -v grep | wc -l`
-
-if [ $proc_number -gt 0 ]; then
- procs=`ps -ef | grep opnfv-testapi | grep -v grep`
- echo "Kill opnfv-testapi server $procs"
- ps -ef | grep opnfv-testapi | grep -v grep | awk '{print $2}' | xargs kill -kill &>/dev/null
-fi
parser.add_argument('-ru', '--resource-listing-url',
type=str,
required=False,
- default='http://localhost:8000/swagger/spec.json',
+ default='http://testresults.opnfv.org/test/swagger/spec.json',
help='Resource Listing Spec File')
parser.add_argument('-au', '--api-declaration-url',
type=str,
required=False,
- default='http://localhost:8000/swagger/spec',
+ default='http://testresults.opnfv.org/test/swagger/spec',
help='API Declaration Spec File')
parser.add_argument('-o', '--output-directory',
required=True,
+++ /dev/null
-#!/bin/bash
-
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-
-#Creating virtual environment
-virtualenv testapi_venv
-source testapi_venv/bin/activate
-
-# Swgger Codegen Tool
-url="http://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.2.1/swagger-codegen-cli-2.2.1.jar"
-
-#Check for jar file locally and in the repo
-if [ ! -f swagger-codegen-cli.jar ];
-then
- wget http://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.2.1/swagger-codegen-cli-2.2.1.jar -O swagger-codegen-cli.jar
-fi
-
-# Start OPNFV Test API Server
-cd utils/test/testapi/
-pip install -r requirements.txt
-./install.sh
-opnfv-testapi -c ../../../testapi_venv/etc/opnfv_testapi/config.ini &