tests.yml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. name: tests
  2. on:
  3. push:
  4. branches:
  5. - master
  6. - '*.x'
  7. pull_request:
  8. schedule:
  9. - cron: '0 0 * * *'
  10. jobs:
  11. tests:
  12. runs-on: ubuntu-22.04
  13. strategy:
  14. fail-fast: true
  15. matrix:
  16. php: [7.2, 7.3, 7.4, '8.0', 8.1, 8.2]
  17. laravel: [6, 7, 8, 9, 10]
  18. exclude:
  19. - php: 7.2
  20. laravel: 8
  21. - php: 7.2
  22. laravel: 9
  23. - php: 7.2
  24. laravel: 10
  25. - php: 7.3
  26. laravel: 9
  27. - php: 7.3
  28. laravel: 10
  29. - php: 7.4
  30. laravel: 9
  31. - php: 7.4
  32. laravel: 10
  33. - php: '8.0'
  34. laravel: 10
  35. - php: 8.1
  36. laravel: 6
  37. - php: 8.1
  38. laravel: 7
  39. - php: 8.2
  40. laravel: 6
  41. - php: 8.2
  42. laravel: 7
  43. - php: 8.2
  44. laravel: 8
  45. name: PHP ${{ matrix.php }} - Laravel ${{ matrix.laravel }}
  46. steps:
  47. - name: Checkout code
  48. uses: actions/checkout@v3
  49. - name: Setup PHP
  50. uses: shivammathur/setup-php@v2
  51. with:
  52. php-version: ${{ matrix.php }}
  53. extensions: dom, curl, libxml, mbstring, zip
  54. ini-values: error_reporting=E_ALL
  55. tools: composer:v2
  56. coverage: none
  57. - name: Install dependencies
  58. run: |
  59. composer require "illuminate/contracts=^${{ matrix.laravel }}" --no-update
  60. composer update --prefer-dist --no-interaction --no-progress
  61. - name: Execute tests
  62. run: vendor/bin/phpunit --verbose