From a732b2bca1d10fe374322fd4a8996fef6e23c11a Mon Sep 17 00:00:00 2001 From: Klaus Weidenbach Date: Sat, 17 Mar 2018 21:47:02 +0100 Subject: :construction_worker:Extend Travis, add PostgreSQL10. Add PostgreSQL10 to TravisCI through Docker container. Use PHP7.2 instead of PHP7.1 as default test environment. Update to current stable MariaDB 10.2 from stable (GA) 10.1. --- .travis.yml | 26 +++++++++++++++++--------- tests/travis/prepare_pgsql.sh | 17 +++++++++++------ 2 files changed, 28 insertions(+), 15 deletions(-) diff --git a/.travis.yml b/.travis.yml index 94c7b4226..8db58f3dc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -62,28 +62,34 @@ matrix: fast_finish: true # Additional check combinations include: - # PHP7.1, mariadb 10.1 - - php: '7.1' - env: DB=mariadb MARIADB_VERSION=10.1 CODECOV=1 + # PHP7.2, mariadb 10.2 + - php: '7.2' + env: DB=mariadb MARIADB_VERSION=10.2 CODECOV=1 # use mariadb instead of MySQL addons: - mariadb: '10.1' - # PHP7.1, PostgreSQL 9.6 - - php: '7.1' + mariadb: '10.2' + # PHP7.2, PostgreSQL 9.6 + - php: '7.2' env: DB=pgsql POSTGRESQL_VERSION=9.6 PHPUNITFILE=phpunit-pgsql.xml # Use newer postgres than 9.2 default addons: postgresql: '9.6' services: - postgresql - # PHP7.1, old precise distribution with MySQL 5.5 - - php: '7.1' + # PostgreSQL 10 with Docker container + - php: '7.2' + env: DB=pgsql POSTGRESQL_VERSION=10 PHPUNITFILE=phpunit-pgsql.xml + sudo: required + services: + - docker + # PHP7.2, old precise distribution with MySQL 5.5 + - php: '7.2' env: DB=mysql MYSQL_VERSION=5.5 dist: precise services: - mysql # MySQL 5.7 with Docker container - - php: '7.1' + - php: '7.2' env: DB=mysql MYSQL_VERSION=5.7 sudo: required services: @@ -109,6 +115,8 @@ before_install: - travis_retry composer self-update # Start MySQL 5.7 Docker container, needs some time to come up - if [[ "$MYSQL_VERSION" == "5.7" ]]; then sudo service mysql stop; docker run -d -p 3306:3306 -e MYSQL_ALLOW_EMPTY_PASSWORD=yes mysql:5.7 && sleep 25 && docker ps; fi + # Start PostgreSQL 10 Docker container, needs some time to come up + - if [[ "$POSTGRESQL_VERSION" == "10" ]]; then sudo service postgresql stop; docker run -d -p 5432:5432 postgres:10-alpine && sleep 35 && docker ps; fi # Install composer dev libs install: diff --git a/tests/travis/prepare_pgsql.sh b/tests/travis/prepare_pgsql.sh index 0175b9858..c6b12e4d6 100755 --- a/tests/travis/prepare_pgsql.sh +++ b/tests/travis/prepare_pgsql.sh @@ -27,14 +27,19 @@ set -e echo "Preparing for PostgreSQL ..." +if [[ "$POSTGRESQL_VERSION" == "10" ]]; then + echo "Using PostgreSQL in Docker container, need to use TCP" + export PROTO="-h localhost" +fi + # Print out some PostgreSQL information psql --version # Why does this hang further execution of the job? -psql -U postgres -c "SELECT VERSION();" +psql $PROTO -U postgres -c "SELECT VERSION();" # Create Hubzilla database -psql -U postgres -c "DROP DATABASE IF EXISTS travis_hubzilla;" -psql -U postgres -v ON_ERROR_STOP=1 <<-EOSQL +psql $PROTO -U postgres -c "DROP DATABASE IF EXISTS travis_hubzilla;" +psql $PROTO -U postgres -v ON_ERROR_STOP=1 <<-EOSQL CREATE USER travis_hz WITH PASSWORD 'hubzilla'; CREATE DATABASE travis_hubzilla; ALTER DATABASE travis_hubzilla OWNER TO travis_hz; @@ -42,8 +47,8 @@ psql -U postgres -v ON_ERROR_STOP=1 <<-EOSQL EOSQL # Import table structure -psql -U travis_hz -v ON_ERROR_STOP=1 travis_hubzilla < ./install/schema_postgres.sql +psql $PROTO -U travis_hz -v ON_ERROR_STOP=1 travis_hubzilla < ./install/schema_postgres.sql # Show databases and tables -psql -U postgres -l -psql -U postgres -d travis_hubzilla -c "\dt;" +psql $PROTO -U postgres -l +psql $PROTO -U postgres -d travis_hubzilla -c "\dt;" -- cgit v1.2.3