aboutsummaryrefslogtreecommitdiffstats
path: root/docker/run_tests.sh
blob: ef3125fc3b557320606dd27369ee75f8eccc6bfb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#!/bin/bash

#
# Author: Jose Lausuch (jose.lausuch@ericsson.com)
#
# Installs the Functest framework within the Docker container
# and run the tests automatically
#
# If config_functest.yaml is given by the docker run command,
# it must be run like this:
#
#   docker run -ti \
#      -e "INSTALLER_TYPE=<something>" \
#      -e "INSTALLER_IP=<ip>" \
#      -v $(pwd)/config_functest.yaml:/home/opnfv/functest/conf/config_functest.yaml \
#      opnfv/functest /bin/bash
#
# NOTE: $(pwd)/config_functest.yaml means that it will take the one in the
#       current directory.
#
# If it is not provided, take the existing one in the functest repo
#

# this pull is to be removed right before the B release, once we build
# a release candidate docker
cd $repos_dir/functest
git pull

mkdir -p /home/opnfv/functest/conf
config_file=/home/opnfv/functest/conf/config_functest.yaml
if [ ! -f ${config_file} ]; then
    default_config_file=$(find /home/opnfv/repos -name config_functest.yaml)
    cp $default_config_file $config_file
    echo "config_functest.yaml not provided. Using default one"
fi


# Parse config_functest.yaml file
# TODO: this is not the best way to parse a yaml file in bash...

# Directories
REPOS_DIR=$(cat $config_file | grep -w dir_repos | awk 'END {print $NF}')
FUNCTEST_REPO_DIR=$(cat $config_file | grep -w dir_repo_functest | awk 'END {print $NF}')
RALLY_REPO_DIR=$(cat $config_file | grep -w dir_repo_rally | awk 'END {print $NF}')
RELENG_REPO_DIR=$(cat $config_file | grep -w dir_repo_releng | awk 'END {print $NF}')
VIMS_REPO_DIR=$(cat $config_file | grep -w dir_repo_vims_test | awk 'END {print $NF}')
BGPVPN_REPO_DIR=$(cat $config_file | grep -w dir_repo_bgpvpn | awk 'END {print $NF}')

FUNCTEST_DIR=$(cat $config_file | grep -w dir_functest | awk 'END {print $NF}')
FUNCTEST_RESULTS_DIR=$(cat $config_file | grep -w dir_results | awk 'END {print $NF}')
FUNCTEST_CONF_DIR=$(cat $config_file | grep -w dir_functest_conf | awk 'END {print $NF}')
FUNCTEST_DATA_DIR=$(cat $config_file | grep -w dir_functest_data | awk 'END {print $NF}')
RALLY_VENV_DIR=$(cat $config_file | grep -w dir_rally_inst | awk 'END {print $NF}')

# Repos
RALLY_BRANCH=$(cat $config_file | grep -w rally_branch | awk 'END {print $NF}')
RALLY_COMMIT=$(cat $config_file | grep -w rally_commit | awk 'END {print $NF}')
RELENG_BRANCH=$(cat $config_file | grep -w releng_branch | awk 'END {print $NF}')
RELENG_COMMIT=$(cat $config_file | grep -w releng_commit | awk 'END {print $NF}')
VIMS_BRANCH=$(cat $config_file | grep -w vims_test_branch | awk 'END {print $NF}')
VIMS_COMMIT=$(cat $config_file | grep -w vims_test_commit | awk 'END {print $NF}')
BGPVPN_BRANCH=$(cat $config_file | grep -w bgpvpn_branch | awk 'END {print $NF}')
BGPVPN_COMMIT=$(cat $config_file | grep -w bgpvpn_commit | awk 'END {print $NF}')
ONOS_BRANCH=$(cat $config_file | grep -w onos_branch | awk 'END {print $NF}')
ONOS_COMMIT=$(cat $config_file | grep -w onos_commit | awk 'END {print $NF}')
PROMISE_BRANCH=$(cat $config_file | grep -w promise_branch | awk 'END {print $NF}')
PROMISE_COMMIT
2">" echo "FUNCTEST_REPO_DIR=${FUNCTEST_REPO_DIR}" echo "RALLY_REPO_DIR=${RALLY_REPO_DIR}" echo "RELENG_REPO_DIR=${RELENG_REPO_DIR}" echo "VIMS_REPO_DIR=${VIMS_REPO_DIR}" echo "FUNCTEST_DIR=${FUNCTEST_DIR}" echo "FUNCTEST_RESULTS_DIR=${FUNCTEST_RESULTS_DIR}" echo "FUNCTEST_CONF_DIR=${FUNCTEST_CONF_DIR}" echo "FUNCTEST_DATA_DIR=${FUNCTEST_DATA_DIR}" echo "RALLY_VENV_DIR=${RALLY_VENV_DIR}" echo "####### Repositories #######" echo "RELENG_BRANCH=${RELENG_BRANCH}" echo "RELENG_COMMIT=${RELENG_COMMIT}" echo "RALLY_BRANCH=${RALLY_BRANCH}" echo "RALLY_COMMIT=${RALLY_COMMIT}" echo "VIMS_BRANCH=${VIMS_BRANCH}" echo "VIMS_COMMIT=${VIMS_COMMIT}" echo "ONOS_BRANCH=${ONOS_BRANCH}" echo "ONOS_COMMIT=${ONOS_COMMIT}" echo "PROMISE_BRANCH=${PROMISE_BRANCH}" echo "PROMISE_COMMIT=${PROMISE_COMMIT}" echo "OVNO_BRANCH=${OVNO_BRANCH}" echo "OVNO_COMMIT=${OVNO_COMMIT}" echo "############################" info () { logger -s -t "FUNCTEST.info" "$*" } error () { logger -s -t "FUNCTEST.error" "$*" exit 1 }