@@ -12,24 +12,24 @@ jobs:
12
12
strategy :
13
13
fail-fast : true
14
14
matrix :
15
- php : [ 7.2, 7.3, 7.4, 8.0, 8.1 ]
16
- laravel : [ ^6.0, ^7.0, ^8.74, ^9.0 ]
17
- composerFlags : ['-- prefer-lowest', '']
15
+ php : [ 7.2, 7.3, 7.4, ' 8.0' , 8.1 ]
16
+ laravel : [ 6, 8, 9 ]
17
+ stability : ['prefer-lowest', 'prefer-stable ']
18
18
exclude :
19
19
- php : 7.2
20
- laravel : ^8.74
20
+ laravel : 8
21
21
- php : 7.2
22
- laravel : ^9.0
22
+ laravel : 9
23
23
- php : 7.3
24
- laravel : ^9.0
24
+ laravel : 9
25
25
- php : 7.4
26
- laravel : ^9.0
26
+ laravel : 9
27
27
- php : 8.1
28
- laravel : ^6.0
28
+ laravel : 6
29
29
- php : 8.1
30
- laravel : ^7.0
30
+ laravel : 7
31
31
32
- name : PHP ${{ matrix.php }} - Laravel ${{ matrix.laravel }} ${{ matrix.composerFlags }}
32
+ name : PHP ${{ matrix.php }} - Laravel ${{ matrix.laravel }} (w/ ${{ matrix.stability }})
33
33
steps :
34
34
- name : Checkout code
35
35
uses : actions/checkout@v2
@@ -39,17 +39,33 @@ jobs:
39
39
with :
40
40
php-version : ${{ matrix.php }}
41
41
extensions : dom, curl, libxml, mbstring, zip
42
+ ini-values : error_reporting=E_ALL
42
43
tools : composer:v2
43
44
coverage : none
44
-
45
- - name : Install dependencies
46
- run : |
47
- composer require "laravel/framework=${{ matrix.laravel }}" --no-update
48
- composer update --prefer-dist --no-interaction --no-progress ${{ matrix.composerFlags }}
49
-
45
+
50
46
- name : Set Minimum PHP 8.1 Versions
51
- run : composer require phpunit/phpunit:^9.5.8 --dev --with-all-dependencies --prefer-dist --no-interaction --no-progress --prefer-lowest
52
- if : matrix.php == 8.1 && matrix.composerFlags == '--prefer-lowest'
47
+ uses : nick-invision/retry@v1
48
+ with :
49
+ timeout_minutes : 5
50
+ max_attempts : 5
51
+ command : |
52
+ composer require phpunit/phpunit:^9.5.8 --dev --${{ matrix.stability }} --no-update --no-interaction
53
+ composer require vlucas/phpdotenv:^5.3.1 --${{ matrix.stability }} --no-update --no-interaction
54
+ if : matrix.php >= 8.1 && matrix.stability == 'prefer-lowest'
55
+
56
+ - name : Set Laravel version
57
+ uses : nick-invision/retry@v1
58
+ with :
59
+ timeout_minutes : 5
60
+ max_attempts : 5
61
+ command : composer require "laravel/framework=^${{ matrix.laravel }}" --no-interaction --no-update
62
+
63
+ - name : Install dependencies
64
+ uses : nick-invision/retry@v1
65
+ with :
66
+ timeout_minutes : 5
67
+ max_attempts : 5
68
+ command : composer update --${{ matrix.stability }} --no-interaction
53
69
54
70
- name : Execute tests
55
71
run : vendor/bin/phpunit --verbose
0 commit comments