diff --git a/.drone.yml b/.drone.yml index 21065087cc9..2d311824195 100644 --- a/.drone.yml +++ b/.drone.yml @@ -214,28 +214,41 @@ matrix: - TESTS: carddavtester-old-endpoint - DB: NODB PHP: 5.4 + ENABLE_REDIS: true - DB: NODB PHP: 5.5 + ENABLE_REDIS: true - DB: NODB PHP: 5.6 + ENABLE_REDIS: true - DB: NODB PHP: 7.0 + ENABLE_REDIS: true - DB: sqlite PHP: 5.4 + ENABLE_REDIS: true - DB: sqlite PHP: 5.5 + ENABLE_REDIS: true - DB: sqlite PHP: 5.6 + ENABLE_REDIS: true - DB: sqlite PHP: 7.0 + ENABLE_REDIS: true - DB: mysql PHP: 5.6 + ENABLE_REDIS: true - DB: postgres PHP: 5.6 + ENABLE_REDIS: true services: cache: image: redis + when: + matrix: + ENABLE_REDIS: true postgres: image: postgres environment: diff --git a/autotest.sh b/autotest.sh index 3f62657a90d..a90376e4c0e 100755 --- a/autotest.sh +++ b/autotest.sh @@ -143,6 +143,10 @@ function cleanup_config { if [ -f config/autotest-storage-swift.config.php ]; then rm config/autotest-storage-swift.config.php fi + # Remove autotest redis config + if [ -f config/redis.config.php ]; then + rm config/redis.config.php + fi } # restore config on exit @@ -176,6 +180,10 @@ function execute_tests { fi cp tests/preseed-config.php config/config.php + if [ "$ENABLE_REDIS" == "true" ] ; then + cp tests/redis.config.php config/redis.config.php + fi + _DB=$DB # drop database @@ -200,7 +208,7 @@ function execute_tests { fi mysql -u "$DATABASEUSER" -powncloud -e "DROP DATABASE IF EXISTS $DATABASENAME" -h $DATABASEHOST || true else - DATABASEHOST=127.0.0.1 + DATABASEHOST=mysql fi fi echo "Waiting for MySQL initialisation ..." @@ -254,6 +262,17 @@ function execute_tests { echo "Postgres is up." else + if [ ! -z "$DRONE" ] ; then + DATABASEHOST=postgres + fi + echo "Waiting for Postgres to be available ..." + if ! apps/files_external/tests/env/wait-for-connection $DATABASEHOST 5432 60; then + echo "[ERROR] Waited 60 seconds, no response" >&2 + exit 1 + fi + echo "Give it 10 additional seconds ..." + sleep 10 + if [ -z "$DRONE" ] ; then # no need to drop the DB when we are on CI dropdb -U "$DATABASEUSER" "$DATABASENAME" || true fi diff --git a/tests/redis.config.php b/tests/redis.config.php new file mode 100644 index 00000000000..9d3f1eca63e --- /dev/null +++ b/tests/redis.config.php @@ -0,0 +1,12 @@ + '\\OC\\Memcache\\Redis', + 'memcache.distributed' => '\\OC\\Memcache\\Redis', + 'memcache.locking' => '\\OC\\Memcache\\Redis', + 'redis' => [ + 'host' => 'cache', + 'port' => 6379, + 'timeout' => 0, + ], +];