@@ -2,25 +2,28 @@ name: run-tests
22
33on : [push, pull_request]
44
5+ permissions :
6+ contents : read
7+
58jobs :
69 test-php8 :
710 runs-on : ${{ matrix.os }}
811 strategy :
912 fail-fast : true
1013 matrix :
1114 os : [ubuntu-latest]
12- php : [8.0, 8. 1, 8.2]
15+ php : [8.1, 8.2]
1316 laravel : [9.*]
1417 dependency-version : [prefer-stable]
1518
1619 name : P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} - ${{ matrix.os }}
1720
1821 steps :
1922 - name : Checkout code
20- uses : actions/checkout@v1
23+ uses : actions/checkout@v4
2124
2225 - name : Cache dependencies
23- uses : actions/cache@v1
26+ uses : actions/cache@v4
2427 with :
2528 path : ~/.composer/cache/files
2629 key : dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}
@@ -35,13 +38,13 @@ jobs:
3538 - name : Install dependencies
3639 run : |
3740 composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
38- composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest
41+ composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction
3942
4043 - name : Execute tests
4144 run : vendor/bin/phpunit --coverage-clover=coverage.xml
4245
4346 - name : Upload coverage to Codecov
44- uses : codecov/codecov-action@v1
47+ uses : codecov/codecov-action@v4
4548 with :
4649 token : ${{ secrets.CODECOV_TOKEN }}
4750 file : ./coverage.xml
@@ -60,10 +63,96 @@ jobs:
6063
6164 steps :
6265 - name : Checkout code
63- uses : actions/checkout@v1
66+ uses : actions/checkout@v4
67+
68+ - name : Cache dependencies
69+ uses : actions/cache@v4
70+ with :
71+ path : ~/.composer/cache/files
72+ key : dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}
73+
74+ - name : Setup PHP
75+ uses : shivammathur/setup-php@v2
76+ with :
77+ php-version : ${{ matrix.php }}
78+ extensions : mbstring
79+ coverage : xdebug
80+
81+ - name : Install dependencies
82+ run : |
83+ composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
84+ composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction
85+
86+ - name : Execute tests
87+ run : vendor/bin/phpunit --coverage-clover=coverage.xml
88+
89+ - name : Upload coverage to Codecov
90+ uses : codecov/codecov-action@v4
91+ with :
92+ token : ${{ secrets.CODECOV_TOKEN }}
93+ file : ./coverage.xml
94+
95+ test-php82 :
96+ runs-on : ${{ matrix.os }}
97+ strategy :
98+ fail-fast : true
99+ matrix :
100+ os : [ubuntu-latest]
101+ php : [8.2, 8.3]
102+ laravel : [11.*]
103+ dependency-version : [prefer-stable]
104+
105+ name : P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} - ${{ matrix.os }}
106+
107+ steps :
108+ - name : Checkout code
109+ uses : actions/checkout@v4
110+
111+ - name : Cache dependencies
112+ uses : actions/cache@v4
113+ with :
114+ path : ~/.composer/cache/files
115+ key : dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}
116+
117+ - name : Setup PHP
118+ uses : shivammathur/setup-php@v2
119+ with :
120+ php-version : ${{ matrix.php }}
121+ extensions : mbstring
122+ coverage : xdebug
123+
124+ - name : Install dependencies
125+ run : |
126+ composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
127+ composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction
128+
129+ - name : Execute tests
130+ run : vendor/bin/phpunit --coverage-clover=coverage.xml
131+
132+ - name : Upload coverage to Codecov
133+ uses : codecov/codecov-action@v4
134+ with :
135+ token : ${{ secrets.CODECOV_TOKEN }}
136+ file : ./coverage.xml
137+
138+ test-php83 :
139+ runs-on : ${{ matrix.os }}
140+ strategy :
141+ fail-fast : true
142+ matrix :
143+ os : [ubuntu-latest]
144+ php : [8.3]
145+ laravel : [12.*]
146+ dependency-version : [prefer-stable]
147+
148+ name : P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} - ${{ matrix.os }}
149+
150+ steps :
151+ - name : Checkout code
152+ uses : actions/checkout@v4
64153
65154 - name : Cache dependencies
66- uses : actions/cache@v1
155+ uses : actions/cache@v4
67156 with :
68157 path : ~/.composer/cache/files
69158 key : dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}
@@ -78,13 +167,13 @@ jobs:
78167 - name : Install dependencies
79168 run : |
80169 composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
81- composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest
170+ composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction
82171
83172 - name : Execute tests
84173 run : vendor/bin/phpunit --coverage-clover=coverage.xml
85174
86175 - name : Upload coverage to Codecov
87- uses : codecov/codecov-action@v1
176+ uses : codecov/codecov-action@v4
88177 with :
89178 token : ${{ secrets.CODECOV_TOKEN }}
90179 file : ./coverage.xml
0 commit comments