144 lines
4.7 KiB
YAML
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
|