X-Git-Url: https://git.immae.eu/?p=github%2Fshaarli%2FShaarli.git;a=blobdiff_plain;f=.travis.yml;h=cb81846f306a9001721de5e75ede34518e230779;hp=26535ad34f66fbdb68adb9446ad386ee057b3707;hb=HEAD;hpb=f09e1e318e0b1c72aa659c20b715be508009175f diff --git a/.travis.yml b/.travis.yml index 26535ad3..422bf835 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,24 +1,68 @@ -sudo: false -dist: precise -language: php -addons: - apt: - packages: - - locales - - language-pack-de - - language-pack-fr +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 + # 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