diff options
Diffstat (limited to '')
-rwxr-xr-x | contrib/docker-test.sh | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/contrib/docker-test.sh b/contrib/docker-test.sh new file mode 100755 index 0000000..234ff95 --- /dev/null +++ b/contrib/docker-test.sh @@ -0,0 +1,51 @@ +#!/bin/bash + +MYSQL_CONTAINER=icingaweb2_director_mysql + +echo "Starting MySQL container..." +docker run -d \ + -e MYSQL_ROOT_PASSWORD=onlyforadmin \ + -e MYSQL_DATABASE=icingaweb2 \ + -e MYSQL_USER=icingaweb2 \ + -e MYSQL_PASSWORD=rosebud \ + --name "$MYSQL_CONTAINER" \ + mariadb >/dev/null + +echo "Running tests..." +docker run --rm -i \ + --link "$MYSQL_CONTAINER":mysql \ + -v `pwd`:/app \ + -e DIRECTOR_TESTDB_RES="Director MySQL TestDB" \ + -e DIRECTOR_TESTDB_HOST="mysql" \ + -e DIRECTOR_TESTDB_USER="icingaweb2" \ + -e DIRECTOR_TESTDB_PASSWORD="rosebud" \ + -e DIRECTOR_TESTDB="icingaweb2" \ + lazyfrosch/icingaweb2-test:5.6 \ + sh - \ +<<EOF + set -ex + cd /app + composer install + { + set +x + count=0 + while ! nc -w 1 -z mysql 3306 + do + echo "Waiting for MySQL to get ready..." + sleep 2 + : \$((count++)) + if [ \$count -gt 10 ]; then + echo "Waiting for MySQL timed out!" + exit 2 + fi + done + } + ret=0 + composer exec phpunit --verbose || ret=\$? + #composer exec phpcs application/ library/ test/php/ *.php || ret=\$? + exit \$ret +EOF + +echo "Stopping MySQL container..." +docker kill "$MYSQL_CONTAINER" +docker rm "$MYSQL_CONTAINER" |