language: php sudo: false php: - 5.6 - 7.0 - 7.3 env: matrix: - DB=mysql db_dsn='mysql://root@127.0.0.1/cakephp_test' global: - DEFAULT=1 matrix: fast_finish: true include: - php: 7.1 env: DB=pgsql db_dsn='postgres://postgres@127.0.0.1/cakephp_test' - php: 7.2 env: DB=sqlite db_dsn='sqlite:///:memory:' - php: 5.6 env: PREFER_LOWEST=1 - php: 7.2 env: CHECKS=1 DEFAULT=0 - php: 7.2 env: CODECOVERAGE=1 DEFAULT=0 before_script: - if [[ $PREFER_LOWEST != 1 ]]; then composer install --prefer-source --no-interaction ; fi - if [[ $PREFER_LOWEST == 1 ]]; then composer update --prefer-lowest --prefer-stable --prefer-dist --no-interaction ; fi - if [[ $CHECKS != 1 ]]; then composer require --dev phpunit/phpunit:"^5.7.14|^6.0"; fi - sh -c "if [ '$DB' = 'mysql' ]; then mysql -e 'CREATE DATABASE cakephp_test;'; fi" - sh -c "if [ '$DB' = 'pgsql' ]; then psql -c 'CREATE DATABASE cakephp_test;' -U postgres; fi" script: - if [[ $DEFAULT == 1 ]]; then vendor/bin/phpunit; fi - if [[ $CHECKS == 1 ]]; then composer phpstan-setup && composer phpstan ; fi - if [[ $CHECKS == 1 ]]; then composer cs-check ; fi - if [[ $CODECOVERAGE == 1 ]]; then vendor/bin/phpunit --coverage-clover=clover.xml || true; fi - if [[ $CODECOVERAGE == 1 ]]; then wget -O codecov.sh https://codecov.io/bash; fi - if [[ $CODECOVERAGE == 1 ]]; then bash codecov.sh; fi notifications: email: false