Skip to content

Commit

Permalink
ISSUE-164 (#165)
Browse files Browse the repository at this point in the history
ISSUE-164 Split tests runs and run only one test in one travis job
  • Loading branch information
paunin committed Jun 1, 2018
1 parent cb079a6 commit 1424edc
Show file tree
Hide file tree
Showing 7 changed files with 72 additions and 59 deletions.
78 changes: 38 additions & 40 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,124 +1,122 @@

##########################################################################
## AUTO-GENERATED FILE ##
## BUILD_NUMBER=Mon May 28 16:58:37 +07 2018 ##
## BUILD_NUMBER=Thu May 31 15:23:48 +07 2018 ##
##########################################################################

sudo: required

services:
- docker

jobs:
include:
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.6_pgpool-3.7_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-9.6_pgpool-3.7_barman-2.4
- COMBINATION=postgres-extended-9.6_pgpool-3.7_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.6_pgpool-3.7_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-9.6_pgpool-3.7_barman-2.3
- COMBINATION=postgres-extended-9.6_pgpool-3.7_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.6_pgpool-3.6_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-9.6_pgpool-3.6_barman-2.4
- COMBINATION=postgres-extended-9.6_pgpool-3.6_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.6_pgpool-3.6_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-9.6_pgpool-3.6_barman-2.3
- COMBINATION=postgres-extended-9.6_pgpool-3.6_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.6_pgpool-3.3_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-9.6_pgpool-3.3_barman-2.4
- COMBINATION=postgres-extended-9.6_pgpool-3.3_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.6_pgpool-3.3_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-9.6_pgpool-3.3_barman-2.3
- COMBINATION=postgres-extended-9.6_pgpool-3.3_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.5_pgpool-3.7_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-9.5_pgpool-3.7_barman-2.4
- COMBINATION=postgres-extended-9.5_pgpool-3.7_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.5_pgpool-3.7_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-9.5_pgpool-3.7_barman-2.3
- COMBINATION=postgres-extended-9.5_pgpool-3.7_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.5_pgpool-3.6_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-9.5_pgpool-3.6_barman-2.4
- COMBINATION=postgres-extended-9.5_pgpool-3.6_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.5_pgpool-3.6_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-9.5_pgpool-3.6_barman-2.3
- COMBINATION=postgres-extended-9.5_pgpool-3.6_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.5_pgpool-3.3_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-9.5_pgpool-3.3_barman-2.4
- COMBINATION=postgres-extended-9.5_pgpool-3.3_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-9.5_pgpool-3.3_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-9.5_pgpool-3.3_barman-2.3
- COMBINATION=postgres-extended-9.5_pgpool-3.3_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-10_pgpool-3.7_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-10_pgpool-3.7_barman-2.4
- COMBINATION=postgres-extended-10_pgpool-3.7_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-10_pgpool-3.7_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-10_pgpool-3.7_barman-2.3
- COMBINATION=postgres-extended-10_pgpool-3.7_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-10_pgpool-3.6_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-10_pgpool-3.6_barman-2.4
- COMBINATION=postgres-extended-10_pgpool-3.6_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-10_pgpool-3.6_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-10_pgpool-3.6_barman-2.3
- COMBINATION=postgres-extended-10_pgpool-3.6_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-10_pgpool-3.3_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-extended-10_pgpool-3.3_barman-2.4
- COMBINATION=postgres-extended-10_pgpool-3.3_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-extended-10_pgpool-3.3_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-extended-10_pgpool-3.3_barman-2.3
- COMBINATION=postgres-extended-10_pgpool-3.3_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.6_pgpool-3.7_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-9.6_pgpool-3.7_barman-2.4
- COMBINATION=postgres-9.6_pgpool-3.7_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.6_pgpool-3.7_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-9.6_pgpool-3.7_barman-2.3
- COMBINATION=postgres-9.6_pgpool-3.7_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.6_pgpool-3.6_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-9.6_pgpool-3.6_barman-2.4
- COMBINATION=postgres-9.6_pgpool-3.6_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.6_pgpool-3.6_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-9.6_pgpool-3.6_barman-2.3
- COMBINATION=postgres-9.6_pgpool-3.6_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.6_pgpool-3.3_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-9.6_pgpool-3.3_barman-2.4
- COMBINATION=postgres-9.6_pgpool-3.3_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.6_pgpool-3.3_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-9.6_pgpool-3.3_barman-2.3
- COMBINATION=postgres-9.6_pgpool-3.3_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.5_pgpool-3.7_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-9.5_pgpool-3.7_barman-2.4
- COMBINATION=postgres-9.5_pgpool-3.7_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.5_pgpool-3.7_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-9.5_pgpool-3.7_barman-2.3
- COMBINATION=postgres-9.5_pgpool-3.7_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.5_pgpool-3.6_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-9.5_pgpool-3.6_barman-2.4
- COMBINATION=postgres-9.5_pgpool-3.6_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.5_pgpool-3.6_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-9.5_pgpool-3.6_barman-2.3
- COMBINATION=postgres-9.5_pgpool-3.6_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.5_pgpool-3.3_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-9.5_pgpool-3.3_barman-2.4
- COMBINATION=postgres-9.5_pgpool-3.3_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-9.5_pgpool-3.3_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-9.5_pgpool-3.3_barman-2.3
- COMBINATION=postgres-9.5_pgpool-3.3_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-10_pgpool-3.7_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-10_pgpool-3.7_barman-2.4
- COMBINATION=postgres-10_pgpool-3.7_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-10_pgpool-3.7_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-10_pgpool-3.7_barman-2.3
- COMBINATION=postgres-10_pgpool-3.7_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-10_pgpool-3.6_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-10_pgpool-3.6_barman-2.4
- COMBINATION=postgres-10_pgpool-3.6_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-10_pgpool-3.6_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-10_pgpool-3.6_barman-2.3
- COMBINATION=postgres-10_pgpool-3.6_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-10_pgpool-3.3_barman-2.4 ./tests/run.sh
env:
- NAME = postgres-10_pgpool-3.3_barman-2.4
- COMBINATION=postgres-10_pgpool-3.3_barman-2.4
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=postgres-10_pgpool-3.3_barman-2.3 ./tests/run.sh
env:
- NAME = postgres-10_pgpool-3.3_barman-2.3
- COMBINATION=postgres-10_pgpool-3.3_barman-2.3
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS=latest ./tests/run.sh
env:
- NAME = latest
- COMBINATION=latest
21 changes: 15 additions & 6 deletions make/make.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
set -e

BUILD_NUMBER=`date`
SYSTEM_TO_MAKE="$1"

function flush {
MARKER_LINE="BUILD_NUMBER=$BUILD_NUMBER"
Expand All @@ -21,8 +22,12 @@ function template {
TEMPLATE_FILE_TO="$2"
CONFIGS="${@:3}"
flush $TEMPLATE_FILE_TO

echo ">>>>>> $CONFIGS"
echo -n ">>>>>> "
if [ "$CONFIGS" == "" ];then
echo "(no configs)"
else
echo "CONFIGS: $CONFIGS"
fi
eval "$CONFIGS" mo $TEMPLATE_FILE_FROM >> $TEMPLATE_FILE_TO
}

Expand All @@ -35,8 +40,12 @@ if [ ! -f "tmp/mo" ]; then
fi

. ./tmp/mo
# Making
for SYSTEM in `find ./make/* -maxdepth 1 -type d`; do
echo "> Processing $SYSTEM"
source $SYSTEM/make.sh
for SYSTEM_PATH in `find ./make/* -maxdepth 1 -type d`; do
SYSTEM=`basename $SYSTEM_PATH`
if [ "$SYSTEM_TO_MAKE" != "" ] && [ "$SYSTEM_TO_MAKE" != "$SYSTEM" ]; then
echo "> Skipping $SYSTEM as it's not required to build (SYSTEM_TO_MAKE=$SYSTEM_TO_MAKE)"
continue
fi
echo "> Making $SYSTEM ($SYSTEM_PATH)"
source $SYSTEM_PATH/make.sh
done
7 changes: 4 additions & 3 deletions make/travis/make.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
echo ">>> Making travis"

FILE_FROM="./src/includes/travis/travis.part.yml"
FILE_HEADER="./src/includes/travis/header.part.yml"
FILE_TO=".travis.yml"

export TEST_COMBINATIONS=(`ls -r docker-compose | grep '.yml' | xargs -I % basename % '.yml'`)
template $FILE_FROM $FILE_TO

template $FILE_HEADER $FILE_TO

export TEST_COMBINATIONS=(`ls -r docker-compose | grep '.yml' | xargs -I % basename % '.yml'`)
template $FILE_FROM $FILE_TO
5 changes: 5 additions & 0 deletions src/includes/travis/header.part.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
sudo: required
services:
- docker
jobs:
include:
9 changes: 1 addition & 8 deletions src/includes/travis/travis.part.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
sudo: required

services:
- docker

jobs:
include:
{{#TEST_COMBINATIONS}}
- script: NO_COLOURS=1 DEBUG=1 TEST_COMBINATIONS={{.}} ./tests/run.sh
env:
- NAME = {{.}}
- COMBINATION={{.}}
{{/TEST_COMBINATIONS}}
1 change: 1 addition & 0 deletions tests/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Some binary ENV variables for tests runner(By default everything is `0`, you can
* `NO_COLOURS` - disable fancy coloured output
* `DEBUG` - will output everything from tests scripts
* `NO_CLEANUP` - will not destroy `docker-compose` environment after each test
* `SKIP_BUILD` - allow to avoid rebuilding of all images for tests on start (required images would be built on test run anyways )

## How to create a new test

Expand Down
10 changes: 8 additions & 2 deletions tests/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,14 @@ for TEST_COMBINATION in $TEST_COMBINATIONS; do
TESTS_SKIPPED=$((TESTS_SKIPPED+1))
fi
export COMPOSE_FILE
echo ">>> Preparing environment:"
docker-compose down -v && docker-compose build --no-cache > /dev/null

if [ "$SKIP_BUILD" == "1" ]; then
echo ">>> Skipping environment preparation! (SKIP_BUILD=$SKIP_BUILD)"
else
echo ">>> Preparing environment:"
docker-compose down -v && docker-compose build --no-cache > /dev/null
fi

for TEST in $TESTS; do
echo -n ">>> Running test $TEST:"

Expand Down

0 comments on commit 1424edc

Please sign in to comment.