diff options
| author | Gauvain Pocentek <gauvain.pocentek@objectif-libre.com> | 2016-01-10 17:34:14 +0100 |
|---|---|---|
| committer | Gauvain Pocentek <gauvain.pocentek@objectif-libre.com> | 2016-01-10 17:34:14 +0100 |
| commit | 572cfa94d8b7463237e0b938b01f2ca3408a2e30 (patch) | |
| tree | a41a9083bfa6175b58a770045069d76ea7d776e7 /tools/functional_tests.sh | |
| parent | 03d804153f20932226fd3b8a6a5daab5727e878a (diff) | |
| download | gitlab-572cfa94d8b7463237e0b938b01f2ca3408a2e30.tar.gz | |
Add a script to build a test env
functional_tests.sh has been split in 2 scripts to make easier the run
of gitlab container.
Diffstat (limited to 'tools/functional_tests.sh')
| -rwxr-xr-x | tools/functional_tests.sh | 67 |
1 files changed, 9 insertions, 58 deletions
diff --git a/tools/functional_tests.sh b/tools/functional_tests.sh index 6ea0b44..d1e8bbe 100755 --- a/tools/functional_tests.sh +++ b/tools/functional_tests.sh @@ -23,31 +23,16 @@ cleanup() { } trap cleanup EXIT -PY_VER=2 -while getopts :p: opt "$@"; do - case $opt in - p) - PY_VER=$OPTARG;; - *) - echo "Unknown option: $opt" - exit 1;; - esac -done - -case $PY_VER in - 2) VENV_CMD=virtualenv;; - 3) VENV_CMD=pyvenv;; - *) - echo "Wrong python version (2 or 3)" - exit 1;; -esac - -docker run --name gitlab-test --detach --publish 8080:80 --publish 2222:22 genezys/gitlab:latest >/dev/null 2>&1 - -LOGIN='root' -PASSWORD='5iveL!fe' +setenv_script=$(dirname $0)/build_test_env.sh + +. $setenv_script "$@" + CONFIG=/tmp/python-gitlab.cfg GITLAB="gitlab --config-file $CONFIG" +GREEN='\033[0;32m' +NC='\033[0m' +OK="echo -e ${GREEN}OK${NC}" + VENV=$(pwd)/.venv $VENV_CMD $VENV @@ -55,42 +40,8 @@ $VENV_CMD $VENV pip install -rrequirements.txt pip install -e . -GREEN='\033[0;32m' -NC='\033[0m' -OK="echo -e ${GREEN}OK${NC}" - -echo -n "Waiting for gitlab to come online... " -I=0 -while :; do - sleep 5 - curl -s http://localhost:8080/users/sign_in 2>/dev/null | grep -q "GitLab Community Edition" && break - let I=I+5 - [ $I -eq 120 ] && exit 1 -done -sleep 5 -$OK - -# Get the token -TOKEN=$(curl -s http://localhost:8080/api/v3/session \ - -X POST \ - --data "login=$LOGIN&password=$PASSWORD" \ - | python -c 'import sys, json; print(json.load(sys.stdin)["private_token"])') - -cat > $CONFIG << EOF -[global] -default = local -timeout = 2 - -[local] -url = http://localhost:8080 -private_token = $TOKEN -EOF - -echo "Config file content ($CONFIG):" -cat $CONFIG - # NOTE(gpocentek): the first call might fail without a little delay -sleep 10 +sleep 5 set -e |
