summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJose Lausuch <jalausuch@suse.com>2017-09-21 16:32:27 +0200
committerTim Rozet <trozet@redhat.com>2017-09-21 13:25:40 -0400
commited3d7f310efbad4094e924aa722978cb3ffa5ecb (patch)
tree5c00807dfd17cc1c4022ce10ddd554ea12b98c00
parent49ad5396069f404522a6fcfa5bb937bd71ab8e82 (diff)
[Functest] Support functest-suite with Alpine containers
Updated all the jobs that use functest-suite. For single test cases, we need to know to which docker image the test belongs to. Change-Id: If7db231ccc891233423f2f2bc3aa5b95d048b30a Signed-off-by: Jose Lausuch <jalausuch@suse.com>
-rw-r--r--jjb/3rd_party_ci/odl-netvirt.yml1
-rw-r--r--jjb/apex/apex.yml3
-rw-r--r--jjb/apex/apex.yml.j23
-rw-r--r--jjb/compass4nfv/compass-verify-jobs.yml4
-rw-r--r--jjb/doctor/doctor.yml3
-rwxr-xr-xjjb/functest/functest-alpine.sh80
-rw-r--r--jjb/functest/functest-daily-jobs.yml34
-rw-r--r--jjb/opera/opera-daily-jobs.yml1
-rw-r--r--jjb/orchestra/orchestra-daily-jobs.yml1
-rw-r--r--jjb/ovn4nfv/ovn4nfv-daily-jobs.yml1
-rw-r--r--jjb/xci/osa-periodic-jobs.yml6
-rw-r--r--jjb/xci/xci-daily-jobs.yml3
-rw-r--r--jjb/xci/xci-verify-jobs.yml6
13 files changed, 119 insertions, 27 deletions
diff --git a/jjb/3rd_party_ci/odl-netvirt.yml b/jjb/3rd_party_ci/odl-netvirt.yml
index 01017f307..863eb94dd 100644
--- a/jjb/3rd_party_ci/odl-netvirt.yml
+++ b/jjb/3rd_party_ci/odl-netvirt.yml
@@ -137,6 +137,7 @@
- name: 'functest-netvirt-virtual-suite-master'
predefined-parameters: |
DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
+ FUNCTEST_MODE=testcase
FUNCTEST_SUITE_NAME=odl_netvirt
RC_FILE_PATH=$HOME/cloner-info/overcloudrc
node-parameters: true
diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml
index bed67f416..772846510 100644
--- a/jjb/apex/apex.yml
+++ b/jjb/apex/apex.yml
@@ -500,7 +500,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=tier
+ FUNCTEST_TIER=healthcheck
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
diff --git a/jjb/apex/apex.yml.j2 b/jjb/apex/apex.yml.j2
index 3c36e8f62..ec68852b6 100644
--- a/jjb/apex/apex.yml.j2
+++ b/jjb/apex/apex.yml.j2
@@ -370,7 +370,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=tier
+ FUNCTEST_TIER=healthcheck
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
diff --git a/jjb/compass4nfv/compass-verify-jobs.yml b/jjb/compass4nfv/compass-verify-jobs.yml
index ee91e02da..f4fe8f66c 100644
--- a/jjb/compass4nfv/compass-verify-jobs.yml
+++ b/jjb/compass4nfv/compass-verify-jobs.yml
@@ -159,7 +159,8 @@
- name: 'functest-compass-virtual-suite-{stream}'
current-parameters: false
predefined-parameters: |
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=tier
+ FUNCTEST_TIER=healthcheck
DEPLOY_SCENARIO=os-nosdn-nofeature-ha
node-parameters: true
kill-phase-on: NEVER
@@ -167,6 +168,7 @@
- name: 'functest-compass-virtual-suite-{stream}'
current-parameters: false
predefined-parameters: |
+ FUNCTEST_MODE=testcase
FUNCTEST_SUITE_NAME=vping_ssh
DEPLOY_SCENARIO=os-nosdn-nofeature-ha
node-parameters: true
diff --git a/jjb/doctor/doctor.yml b/jjb/doctor/doctor.yml
index 012d37398..c80642979 100644
--- a/jjb/doctor/doctor.yml
+++ b/jjb/doctor/doctor.yml
@@ -143,6 +143,9 @@
description: 'Scenario to deploy and test'
# functest-suite-parameter
- string:
+ name: FUNCTEST_MODE
+ default: 'testcase'
+ - string:
name: FUNCTEST_SUITE_NAME
default: 'doctor-notification'
- string:
diff --git a/jjb/functest/functest-alpine.sh b/jjb/functest/functest-alpine.sh
index c9484304f..38dcf016d 100755
--- a/jjb/functest/functest-alpine.sh
+++ b/jjb/functest/functest-alpine.sh
@@ -4,6 +4,60 @@ set -e
set +u
set +o pipefail
+run_tiers() {
+ cmd_opt='prepare_env start && run_tests -r -t all'
+ ret_val_file="${HOME}/opnfv/functest/results/${BRANCH##*/}/return_value"
+ echo 0 > ${ret_val_file}
+
+ for tier in ${tiers[@]}; do
+ FUNCTEST_IMAGE=opnfv/functest-${tier}
+ echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..."
+ docker pull ${FUNCTEST_IMAGE}>/dev/null
+ cmd="docker run --privileged=true ${envs} ${volumes} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
+ echo "Running Functest tier '${tier}'. CMD: ${cmd}"
+ eval ${cmd}
+ ret_value=$?
+ if [ ${ret_value} != 0 ]; then
+ echo ${ret_value} > ${ret_val_file}
+ fi
+ done
+}
+
+run_test() {
+ test_name=$1
+ cmd_opt='prepare_env start && run_tests -r -t $test_name'
+ ret_val_file="${HOME}/opnfv/functest/results/${BRANCH##*/}/return_value"
+ echo 0 > ${ret_val_file}
+ # Determine which Functest image should be used for the test case
+ case ${test_name} in
+ connection_check|api_check|snaps_health_check)
+ FUNCTEST_IMAGE=opnfv/functest-healthcheck
+ vping_ssh|vping_userdata|tempest_smoke_serial|rally_sanity|refstack_defcore|odl|odl_netvirt|fds|snaps_smoke)
+ FUNCTEST_IMAGE=opnfv/functest-smoke
+ tempest_full_parallel|tempest_custom|rally_full)
+ FUNCTEST_IMAGE=opnfv/functest-components
+ cloudify_ims|orchestra_openims|orchestra_clearwaterims|vyos_vrouter)
+ FUNCTEST_IMAGE=opnfv/functest-vnf
+ promise|doctor-notification|bgpvpn|functest-odl-sfc|domino-multinode|barometercollectd)
+ FUNCTEST_IMAGE=opnfv/functest-features
+ parser)
+ FUNCTEST_IMAGE=opnfv/functest-parser
+ *)
+ echo "Unkown test case $test_name"
+ exit 1
+ esac
+ echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..."
+ docker pull ${FUNCTEST_IMAGE}>/dev/null
+ cmd="docker run --privileged=true ${envs} ${volumes} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
+ echo "Running Functest test case '${test_name}'. CMD: ${cmd}"
+ eval ${cmd}
+ ret_value=$?
+ if [ ${ret_value} != 0 ]; then
+ echo ${ret_value} > ${ret_val_file}
+ fi
+}
+
+
[[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
FUNCTEST_DIR=/home/opnfv/functest
DEPLOY_TYPE=baremetal
@@ -75,29 +129,17 @@ volumes="${images_vol} ${results_vol} ${sshkey_vol} ${rc_file_vol} ${cacert_file
set +e
-if [ ${FUNCTEST_SUITE_NAME} == 'healthcheck' ]; then
- tiers=(healthcheck)
+
+if [ ${FUNCTEST_MODE} == 'testcase' ]; then
+ run_test ${FUNCTEST_SUITE_NAME}
+elif [ ${FUNCTEST_MODE} == 'tier' ]; then
+ tiers= (${FUNCTEST_TIER})
+ run_tiers ${tiers}
else
if [ ${DEPLOY_TYPE} == 'baremetal' ]; then
tiers=(healthcheck smoke features vnf parser)
else
tiers=(healthcheck smoke features)
fi
+ run_tiers ${tiers}
fi
-
-cmd_opt='prepare_env start && run_tests -r -t all'
-ret_val_file="${HOME}/opnfv/functest/results/${BRANCH##*/}/return_value"
-echo 0 > ${ret_val_file}
-
-for tier in ${tiers[@]}; do
- FUNCTEST_IMAGE=opnfv/functest-${tier}
- echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..."
- docker pull ${FUNCTEST_IMAGE}>/dev/null
- cmd="docker run --privileged=true ${envs} ${volumes} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
- echo "Running Functest tier '${tier}'. CMD: ${cmd}"
- eval ${cmd}
- ret_value=$?
- if [ ${ret_value} != 0 ]; then
- echo ${ret_value} > ${ret_val_file}
- fi
-done
diff --git a/jjb/functest/functest-daily-jobs.yml b/jjb/functest/functest-daily-jobs.yml
index ea39de44b..5a99fdce8 100644
--- a/jjb/functest/functest-daily-jobs.yml
+++ b/jjb/functest/functest-daily-jobs.yml
@@ -297,20 +297,27 @@
name: functest-daily-parameter
parameters:
- string:
- name: FUNCTEST_SUITE_NAME
+ name: FUNCTEST_MODE
default: 'daily'
description: "Daily suite name to run"
- parameter:
name: functest-arm-daily-parameter
parameters:
- string:
- name: FUNCTEST_SUITE_NAME
+ name: FUNCTEST_MODE
default: 'arm-daily'
description: "Daily suite name (Aarch64) to run"
- parameter:
name: functest-suite-parameter
parameters:
- choice:
+ name: FUNCTEST_MODE
+ choices:
+ - 'tier'
+ - 'testcase'
+ default: 'tier'
+ description: "Test case or Tier to be run"
+ - choice:
name: FUNCTEST_SUITE_NAME
choices:
- 'connection_check'
@@ -336,6 +343,16 @@
- 'cloudify_vrouter'
- 'orchestra_openims'
- 'orchestra_clearwaterims'
+ default: 'connection_check'
+ - choice:
+ name: FUNCTEST_TIER
+ choices:
+ - 'healthcheck'
+ - 'smoke'
+ - 'features'
+ - 'components'
+ - 'vnf'
+ default: 'healthcheck'
- string:
name: TESTCASE_OPTIONS
default: ''
@@ -409,6 +426,14 @@
- 'functest-store-results'
- builder:
+ name: functest-alpine-suite-builder
+ builders:
+ - 'functest-cleanup'
+ - 'set-functest-env-alpine'
+ - 'functest-suite'
+ - 'functest-store-results'
+
+- builder:
name: functest-daily
builders:
- shell:
@@ -427,7 +452,10 @@
name: functest-suite
builders:
- shell:
- !include-raw: ./functest-suite.sh
+ !include-raw:
+ - ./functest-env-presetup.sh
+ - ../../utils/fetch_os_creds.sh
+ - ./functest-alpine.sh
- builder:
name: set-functest-env
diff --git a/jjb/opera/opera-daily-jobs.yml b/jjb/opera/opera-daily-jobs.yml
index d0dd0525a..5d7526bba 100644
--- a/jjb/opera/opera-daily-jobs.yml
+++ b/jjb/opera/opera-daily-jobs.yml
@@ -92,6 +92,7 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=os-nosdn-openo-ha
+ FUNCTEST_MODE=testcase
FUNCTEST_SUITE_NAME=opera_vims
node-parameters: true
kill-phase-on: NEVER
diff --git a/jjb/orchestra/orchestra-daily-jobs.yml b/jjb/orchestra/orchestra-daily-jobs.yml
index 74c997cad..7c2deaec4 100644
--- a/jjb/orchestra/orchestra-daily-jobs.yml
+++ b/jjb/orchestra/orchestra-daily-jobs.yml
@@ -93,6 +93,7 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=os-nosdn-openbaton-ha
+ FUNCTEST_MODE=testcase
FUNCTEST_SUITE_NAME=orchestra_ims
node-parameters: true
kill-phase-on: NEVER
diff --git a/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml
index a4c5865c0..ca4cfeede 100644
--- a/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml
+++ b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml
@@ -81,6 +81,7 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=os-ovn-nofeature-ha
+ FUNCTEST_MODE=testcase
FUNCTEST_SUITE_NAME=ovn4nfv_test_suite
node-parameters: true
kill-phase-on: NEVER
diff --git a/jjb/xci/osa-periodic-jobs.yml b/jjb/xci/osa-periodic-jobs.yml
index 86910ac4f..048825e74 100644
--- a/jjb/xci/osa-periodic-jobs.yml
+++ b/jjb/xci/osa-periodic-jobs.yml
@@ -106,7 +106,8 @@
predefined-parameters: |
DISTRO={distro}
DEPLOY_SCENARIO=os-nosdn-nofeature-noha
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=tier
+ FUNCTEST_TIER=healthcheck
node-parameters: true
kill-phase-on: NEVER
abort-all-job: false
@@ -159,6 +160,9 @@
name: OPNFV_RELENG_DEV_PATH
default: $WORKSPACE/releng-xci
- string:
+ name: FUNCTEST_MODE
+ default: 'tier'
+ - string:
name: FUNCTEST_SUITE_NAME
default: 'healthcheck'
- string:
diff --git a/jjb/xci/xci-daily-jobs.yml b/jjb/xci/xci-daily-jobs.yml
index 64659da40..7d95429da 100644
--- a/jjb/xci/xci-daily-jobs.yml
+++ b/jjb/xci/xci-daily-jobs.yml
@@ -215,6 +215,9 @@
name: INSTALLER_TYPE
default: 'osa'
- string:
+ name: FUNCTEST_MODE
+ default: 'daily'
+ - string:
name: FUNCTEST_SUITE_NAME
default: 'daily'
description: "Daily suite name to run"
diff --git a/jjb/xci/xci-verify-jobs.yml b/jjb/xci/xci-verify-jobs.yml
index 324bfd14c..440fac79f 100644
--- a/jjb/xci/xci-verify-jobs.yml
+++ b/jjb/xci/xci-verify-jobs.yml
@@ -145,7 +145,8 @@
DISTRO={distro}
DEPLOY_SCENARIO=os-nosdn-nofeature-noha
CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=tier
+ FUNCTEST_TIER=healthcheck
node-parameters: true
kill-phase-on: NEVER
abort-all-job: true
@@ -178,6 +179,9 @@
name: DEPLOY_SCENARIO
default: 'os-nosdn-nofeature-noha'
- string:
+ name: FUNCTEST_MODE
+ default: 'tier'
+ - string:
name: FUNCTEST_SUITE_NAME
default: 'healthcheck'
- string: