language: php php: - 5.6 - 7 - 7.1 - 7.2 env: global: - APP_NAME=bookmarks - PHP_COVERAGE=FALSE matrix: - DB=sqlite SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master - DB=sqlite SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - DB=sqlite SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable13 - DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master PHP_COVERAGE=TRUE - DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable13 - DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master - DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable13 matrix: exclude: - php: 5.6 env: DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master PHP_COVERAGE=TRUE - php: 5.6 env: DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - php: 5.6 env: DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master - php: 5.6 env: DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master - php: 5.6 env: DB=sqlite SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master - php: 5.6 env: DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - php: 7 env: DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master PHP_COVERAGE=TRUE - php: 7 env: DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - php: 7 env: DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=master - php: 7 env: DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - php: 7.2 env: DB=sqlite SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - php: 7.2 env: DB=mysql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 - php: 7.2 env: DB=pgsql SERVER=nextcloud/travis_ci/master SERVER_BRANCH=stable12 fast_finish: true branches: only: - master - /^stable\d+(\.\d+)?$/ before_install: - sudo apt-get -qq update - sudo apt-get install -y libxml2-utils - composer install - wget https://raw.githubusercontent.com/$SERVER/before_install.sh - . ./before_install.sh "$APP_NAME" "$SERVER_BRANCH" "$DB" - cd ../core || cd ../server - php occ app:enable $APP_NAME script: # Test lint - cd apps/$APP_NAME - find . -name \*.php -exec php -l "{}" \; # Check info.xml schema validity - wget https://apps.nextcloud.com/schema/apps/info.xsd - xmllint appinfo/info.xml --schema info.xsd --noout - rm info.xsd # Run phpunit tests - cd tests - phpunit --configuration phpunit.xml # Create coverage report - sh -c "if [ '$PHP_COVERAGE' != 'FALSE' ]; then wget https://scrutinizer-ci.com/ocular.phar; fi" - sh -c "if [ '$PHP_COVERAGE' != 'FALSE' ]; then php ocular.phar code-coverage:upload --format=php-clover clover.xml; fi"