77 runs-on : ubuntu-latest
88 strategy :
99 matrix :
10- php : [ 8.0 , 8.1, 8.2 ]
10+ php : [ 8.3 , 8.4 ]
1111
1212 steps :
13- - uses : actions/checkout@v3
13+ - uses : actions/checkout@v4
1414
1515 - name : Cache Composer dependencies
16- uses : actions/cache@v3
16+ uses : actions/cache@v4
1717 with :
1818 path : /tmp/composer-cache
19- key : ${{ runner.os }}-${{ hashFiles('**/composer.lock') }}
19+ key : ${{ runner.os }}-${{ matrix.php }}-${{ hashFiles('**/composer.lock') }}
2020
2121 - name : Composer install
2222 uses : php-actions/composer@v6
2323 with :
2424 php_version : ${{ matrix.php }}
2525
2626 - name : Archive build
27- run : mkdir /tmp/github-actions/ && tar -cvf /tmp/github-actions/build.tar ./
27+ run : mkdir /tmp/github-actions/ && tar --exclude=".git" - cvf /tmp/github-actions/build.tar ./
2828
2929 - name : Upload build archive for test runners
30- uses : actions/upload-artifact@v3
30+ uses : actions/upload-artifact@v4
3131 with :
32- name : build-artifact
32+ name : build-artifact-${{ matrix.php }}
3333 path : /tmp/github-actions
3434
3535 phpunit :
3636 runs-on : ubuntu-latest
3737 needs : [ composer ]
3838 strategy :
3939 matrix :
40- php : [ 8.0 , 8.1, 8.2 ]
40+ php : [ 8.3 , 8.4 ]
4141
4242 outputs :
4343 coverage : ${{ steps.store-coverage.outputs.coverage_text }}
4444
4545 steps :
46- - uses : actions/download-artifact@v3
46+ - uses : actions/download-artifact@v4
4747 with :
48- name : build-artifact
48+ name : build-artifact-${{ matrix.php }}
4949 path : /tmp/github-actions
5050
5151 - name : Extract build archive
@@ -62,40 +62,45 @@ jobs:
6262 coverage_clover : _coverage/clover.xml
6363
6464 - name : Store coverage data
65- uses : actions/upload-artifact@v3
65+ uses : actions/upload-artifact@v4
6666 with :
67- name : code-coverage
67+ name : code-coverage-${{ matrix.php }}-${{ github.run_number }}
6868 path : _coverage
6969
7070 coverage :
7171 runs-on : ubuntu-latest
7272 needs : [ phpunit ]
73+ strategy :
74+ matrix :
75+ php : [ 8.3, 8.4 ]
7376
7477 steps :
75- - uses : actions/checkout@v3
78+ - uses : actions/checkout@v4
7679
77- - uses : actions/download-artifact@v3
80+ - uses : actions/download-artifact@v4
7881 with :
79- name : code-coverage
82+ name : code-coverage-${{ matrix.php }}-${{ github.run_number }}
8083 path : _coverage
8184
8285 - name : Output coverage
8386 run : cat "_coverage/coverage.txt"
8487
8588 - name : Upload to Codecov
86- uses : codecov/codecov-action@v3
89+ uses : codecov/codecov-action@v5
90+ with :
91+ token : ${{ secrets.CODECOV_TOKEN }}
8792
8893 phpstan :
8994 runs-on : ubuntu-latest
9095 needs : [ composer ]
9196 strategy :
9297 matrix :
93- php : [ 8.0 , 8.1, 8.2 ]
98+ php : [ 8.3 , 8.4 ]
9499
95100 steps :
96- - uses : actions/download-artifact@v3
101+ - uses : actions/download-artifact@v4
97102 with :
98- name : build-artifact
103+ name : build-artifact-${{ matrix.php }}
99104 path : /tmp/github-actions
100105
101106 - name : Extract build archive
@@ -113,12 +118,12 @@ jobs:
113118 needs : [ composer ]
114119 strategy :
115120 matrix :
116- php : [ 8.0 , 8.1, 8.2 ]
121+ php : [ 8.3 , 8.4 ]
117122
118123 steps :
119- - uses : actions/download-artifact@v3
124+ - uses : actions/download-artifact@v4
120125 with :
121- name : build-artifact
126+ name : build-artifact-${{ matrix.php }}
122127 path : /tmp/github-actions
123128
124129 - name : Extract build archive
@@ -137,12 +142,12 @@ jobs:
137142 needs : [ composer ]
138143 strategy :
139144 matrix :
140- php : [ 8.0 , 8.1, 8.2 ]
145+ php : [ 8.3 , 8.4 ]
141146
142147 steps :
143- - uses : actions/download-artifact@v3
148+ - uses : actions/download-artifact@v4
144149 with :
145- name : build-artifact
150+ name : build-artifact-${{ matrix.php }}
146151 path : /tmp/github-actions
147152
148153 - name : Extract build archive
@@ -163,7 +168,7 @@ jobs:
163168 env :
164169 GH_TOKEN : ${{ github.token }}
165170 run : |
166- gh api "/repos/${{ github.repository }}/actions/artifacts?name=build-artifact " | jq ".artifacts[] | select(.name == \"build-artifact\") | .id" > artifact-id-list.txt
171+ gh api "/repos/${{ github.repository }}/actions/artifacts" | jq ".artifacts[] | select(.name | startswith( \"build-artifact\") ) | .id" > artifact-id-list.txt
167172 while read id
168173 do
169174 echo -n "Deleting artifact ID $id ... "
0 commit comments