X-Git-Url: https://git.immae.eu/?p=github%2Fshaarli%2FShaarli.git;a=blobdiff_plain;f=.travis.yml;h=cb81846f306a9001721de5e75ede34518e230779;hp=b6b9bddf60d0595dae6069fd33cf8ad166c5cee5;hb=HEAD;hpb=a59bbf50d7530d7e82a91896a210b9da49cb1568 diff --git a/.travis.yml b/.travis.yml index b6b9bddf..422bf835 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,19 +1,68 @@ -sudo: false -dist: trusty -language: php +dist: bionic + +matrix: + include: + # jobs for each supported php version + - language: php + php: nightly # PHP 8.0 + install: + - composer self-update --2 + - composer update --ignore-platform-req=php + - composer remove --dev --ignore-platform-req=php phpunit/phpunit + - composer require --dev --ignore-platform-req=php phpunit/php-text-template ^2.0 + - composer require --dev --ignore-platform-req=php phpunit/phpunit ^9.0 + - language: php + php: 7.4 + - language: php + php: 7.3 + - language: php + php: 7.2 + - language: php + php: 7.1 + # jobs for frontend builds + - language: node_js + node_js: 10 + cache: + yarn: true + directories: + - $HOME/.cache/yarn + install: + - yarn install + before_script: + - PATH=${PATH//:\.\/node_modules\/\.bin/} + script: + - yarn run build # verify successful frontend builds + - make eslint # javascript static analysis + - make sasslint # linter for SASS syntax + # jobs for documentation builds + - language: python + python: 3.6 + cache: + directories: + - $HOME/.cache/pip + install: + - pip install mkdocs + script: + - mkdocs build --clean + cache: directories: - $HOME/.composer/cache -php: - - 7.1 - - 7.0 - - 5.6 - - 5.5 + +before_install: + # Disable xdebug: it significantly speed up tests and linter, and we don't use coverage yet + - phpenv config-rm xdebug.ini || echo 'No xdebug config.' + install: - - composer self-update - - composer install --prefer-dist - - locale -a + # install/update composer and php dependencies + - composer config --unset platform && composer config platform.php $TRAVIS_PHP_VERSION + - composer update + +before_script: + - PATH=${PATH//:\.\/node_modules\/\.bin/} + script: - make clean - make check_permissions + - make code_sniffer - make all_tests