language: php dist: bionic services: - mysql env: - SYMFONY_DEPRECATIONS_HELPER=disabled APP_ENV=test # Disable deprecation warnings # Test for all supported PHP versions php: #- '7.1' - '7.2' - '7.3' - '7.4' install: - composer install -o # Compile assets - yarn install - yarn build - php bin/console --env test doctrine:database:create --if-not-exists -n - php bin/console --env test doctrine:migrations:migrate -n # Load fixtures (We have to disable foreign key checks or we get errors) - mysql -e "SET GLOBAL FOREIGN_KEY_CHECKS=0;" - php bin/console --env test doctrine:fixtures:load -n - mysql -e "SET GLOBAL FOREIGN_KEY_CHECKS=1;" before_script: # Disable Xdebug on non coverage builds - if [[ $(phpenv version-name) != '7.2' ]]; then phpenv config-rm xdebug.ini ; fi script: # Only run code coverage on PHP 7.2 to improve performance (code coverage is slower than normal testing) - if [[ $(phpenv version-name) == '7.2' ]]; then php bin/phpunit --coverage-clover=coverage.xml ; fi - if [[ $(phpenv version-name) != '7.2' ]]; then php bin/phpunit ; fi # Perform some simple linting if everything is correct - ./bin/console lint:yaml config --parse-tags - ./bin/console lint:twig templates --env=prod - ./bin/console lint:xliff translations # Check if we dont use dependencies with known vulnerabilities - ./bin/console security:check # Check doctrine mapping - ./bin/console doctrine:schema:validate --skip-sync -vvv --no-interaction # Static analysis - ./bin/console cache:clear --env dev - composer phpstan after_success: - if [[ $(phpenv version-name) == '7.2' ]]; then bash <(curl -s https://codecov.io/bash) ; fi matrix: fast_finish: true