ci.yml 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. name: CI
  2. on:
  3. push:
  4. branches:
  5. - master
  6. pull_request: ~
  7. jobs:
  8. check_composer:
  9. name: Check composer.json
  10. runs-on: ubuntu-latest
  11. steps:
  12. - uses: actions/checkout@v2
  13. - uses: shivammathur/setup-php@v2
  14. with:
  15. coverage: none
  16. php-version: '8.0'
  17. - run: composer validate --strict --no-check-lock
  18. tests:
  19. runs-on: ubuntu-latest
  20. strategy:
  21. fail-fast: false
  22. matrix:
  23. php: [ '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1' ]
  24. composer_flags: [ '' ]
  25. include:
  26. - php: '5.5'
  27. composer_flags: '--prefer-lowest'
  28. - php: '7.0'
  29. composer_flags: '--prefer-lowest'
  30. steps:
  31. - uses: actions/checkout@v2
  32. - uses: shivammathur/setup-php@v2
  33. with:
  34. php-version: "${{ matrix.php }}"
  35. - name: Install dependencies
  36. run: composer update --ansi --no-progress --prefer-dist --no-interaction ${{ matrix.composer_flags }}
  37. - name: Run tests
  38. run: vendor/bin/phpunit -v --colors=always --coverage-clover=coverage.clover
  39. - name: Upload code coverage
  40. continue-on-error: true
  41. run: wget https://scrutinizer-ci.com/ocular.phar && php ocular.phar code-coverage:upload --format=php-clover coverage.clover