registration/.travis.yml

144 lines
4.7 KiB
YAML

sudo: false
language: php
php:
- 5.6
- 7.0
- 7.1
cache:
directories:
- $HOME/.composer/cache/files
services:
- mysql
- postgresql
addons:
apt:
packages:
- php5-pgsql
- libxml2-utils
env:
global:
- PHP_COVERAGE=FALSE
matrix:
# Nextcloud 9+
- CORE_TYPE=nextcloud CORE_BRANCH=master DB=sqlite
- CORE_TYPE=nextcloud CORE_BRANCH=stable12 DB=sqlite
- CORE_TYPE=nextcloud CORE_BRANCH=stable11 DB=sqlite
- CORE_TYPE=nextcloud CORE_BRANCH=stable10 DB=sqlite
- CORE_TYPE=nextcloud CORE_BRANCH=stable9 DB=sqlite
- CORE_TYPE=nextcloud CORE_BRANCH=master DB=mysql
- CORE_TYPE=nextcloud CORE_BRANCH=stable12 DB=mysql
- CORE_TYPE=nextcloud CORE_BRANCH=stable11 DB=mysql
- CORE_TYPE=nextcloud CORE_BRANCH=stable10 DB=mysql
- CORE_TYPE=nextcloud CORE_BRANCH=stable9 DB=mysql
- CORE_TYPE=nextcloud CORE_BRANCH=master DB=pgsql
- CORE_TYPE=nextcloud CORE_BRANCH=stable12 DB=pgsql
- CORE_TYPE=nextcloud CORE_BRANCH=stable11 DB=pgsql
- CORE_TYPE=nextcloud CORE_BRANCH=stable10 DB=pgsql
- CORE_TYPE=nextcloud CORE_BRANCH=stable9 DB=pgsql
# ownCloud 9.1+
- CORE_TYPE=owncloud CORE_BRANCH=master DB=sqlite
- CORE_TYPE=owncloud CORE_BRANCH=stable10 DB=sqlite
- CORE_TYPE=owncloud CORE_BRANCH=stable9.1 DB=sqlite
- CORE_TYPE=owncloud CORE_BRANCH=master DB=mysql
- CORE_TYPE=owncloud CORE_BRANCH=stable10 DB=mysql
- CORE_TYPE=owncloud CORE_BRANCH=stable9.1 DB=mysql
- CORE_TYPE=owncloud CORE_BRANCH=master DB=pgsql
- CORE_TYPE=owncloud CORE_BRANCH=stable10 DB=pgsql
- CORE_TYPE=owncloud CORE_BRANCH=stable9.1 DB=pgsql
matrix:
fast_finish: true
exclude:
- php: 5.6
env: CORE_TYPE=nextcloud CORE_BRANCH=master DB=sqlite
- php: 5.6
env: CORE_TYPE=nextcloud CORE_BRANCH=master DB=mysql
- php: 5.6
env: CORE_TYPE=nextcloud CORE_BRANCH=master DB=pgsql
- php: 5.6
env: CORE_TYPE=owncloud CORE_BRANCH=master DB=sqlite
- php: 5.6
env: CORE_TYPE=owncloud CORE_BRANCH=master DB=mysql
- php: 5.6
env: CORE_TYPE=owncloud CORE_BRANCH=master DB=pgsql
# Nextcloud prior v11 is not compatible with PHP 7.1
# (see https://github.com/nextcloud/server/blob/stable10/console.php#L42)
- php: 7.1
env: CORE_TYPE=nextcloud CORE_BRANCH=stable9 DB=sqlite
- php: 7.1
env: CORE_TYPE=nextcloud CORE_BRANCH=stable9 DB=mysql
- php: 7.1
env: CORE_TYPE=nextcloud CORE_BRANCH=stable9 DB=pgsql
- php: 7.1
env: CORE_TYPE=nextcloud CORE_BRANCH=stable10 DB=sqlite
- php: 7.1
env: CORE_TYPE=nextcloud CORE_BRANCH=stable10 DB=mysql
- php: 7.1
env: CORE_TYPE=nextcloud CORE_BRANCH=stable10 DB=pgsql
# ownCloud prior v10 is not compatible with PHP 7.1
# (see https://github.com/owncloud/core/blob/stable9.1/console.php#L47)
- php: 7.1
env: CORE_TYPE=owncloud CORE_BRANCH=stable9.1 DB=sqlite
- php: 7.1
env: CORE_TYPE=owncloud CORE_BRANCH=stable9.1 DB=mysql
- php: 7.1
env: CORE_TYPE=owncloud CORE_BRANCH=stable9.1 DB=pgsql
include:
# Nextcloud prior v13 is not compatible with PHP 7.2
# (see https://github.com/nextcloud/server/issues/6786#issuecomment-335154372)
- php: 7.2
env: CORE_TYPE=nextcloud CORE_BRANCH=master DB=sqlite
- php: 7.2
env: CORE_TYPE=nextcloud CORE_BRANCH=master DB=mysql
- php: 7.2
env: CORE_TYPE=nextcloud CORE_BRANCH=master DB=pgsql
# ownCloud prior v10 is not compatible with PHP 7.2
# (see https://github.com/owncloud/core/pull/29878)
- php: 7.2
env: CORE_TYPE=owncloud CORE_BRANCH=master DB=sqlite
- php: 7.2
env: CORE_TYPE=owncloud CORE_BRANCH=master DB=mysql
- php: 7.2
env: CORE_TYPE=owncloud CORE_BRANCH=master DB=pgsql
- php: 7.2
env: CORE_TYPE=owncloud CORE_BRANCH=stable10 DB=sqlite
- php: 7.2
env: CORE_TYPE=owncloud CORE_BRANCH=stable10 DB=mysql
- php: 7.2
env: CORE_TYPE=owncloud CORE_BRANCH=stable10 DB=pgsql
before_install:
# XDebug is only needed if we report coverage -> speeds up other builds
- if [[ "$PHP_COVERAGE" = "FALSE" ]]; then phpenv config-rm xdebug.ini; fi
install:
- . ./tests/scripts/core-download.sh
- . ${BUILD_APP_MODULE_DIR}/tests/scripts/core-database.sh
- . ${BUILD_APP_MODULE_DIR}/tests/scripts/core-setup.sh
script:
# Check info.xml schema validity
- . ${BUILD_APP_MODULE_DIR}/tests/scripts/lint-appinfo.sh
# Check PHP syntax errors
- . ${BUILD_APP_MODULE_DIR}/tests/scripts/lint-php.sh
# Run app code checker but do not fail, as we have to use private API for now
- . ${BUILD_APP_MODULE_DIR}/tests/scripts/app-check-code.sh || true
# Run PHP tests
- . ${BUILD_APP_MODULE_DIR}/tests/scripts/phpunit.sh