11name : CI
2- on : [ push, pull_request ]
2+ on : [push, pull_request]
33
44jobs :
55 tests :
66 name : PHP ${{ matrix.php }} (${{ matrix.dependencies }} deps)
77
88 runs-on : ubuntu-latest
9+ timeout-minutes : 5
910 strategy :
1011 matrix :
11- php : [ "7.4", "8.0", "8.1" ]
12- dependencies : [ "lowest", "locked" ]
12+ php : ["7.4", "8.0", "8.1"]
13+ dependencies : ["lowest", "locked"]
1314 env :
1415 extensions : mbstring, pcov
1516 ini : pcov.directory=., "pcov.exclude=\"~(vendor|tests)~\""
1617
1718 steps :
1819 - name : Checkout
19- uses : actions/checkout@f1d3225b5376a0791fdee5a0e8eac5289355e43a # pin@v2
20+ uses : actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # pin@v2
2021
2122 - name : Setup PHP cache environment
2223 id : ext-cache
23- uses : shivammathur/cache-extensions@8828d749a642ae651470bd7713c2266c82cac102 # pin@v1
24+ uses : shivammathur/cache-extensions@2e789925e438042ecda2b83f0fd00bbc016da76e # pin@v1
2425 with :
2526 php-version : ${{ matrix.php }}
2627 extensions : ${{ env.extensions }}
2728 key : php-v1
2829
2930 - name : Cache PHP extensions
30- uses : actions/cache@1c6fb82ebbd610035c324e764e5e74d0e82f8a60 # pin@v2
31+ uses : actions/cache@c64c572235d810460d0d6876e9c705ad5002b353 # pin@v2
3132 with :
3233 path : ${{ steps.ext-cache.outputs.dir }}
3334 key : ${{ steps.ext-cache.outputs.key }}
3435 restore-keys : ${{ steps.ext-cache.outputs.key }}
3536
3637 - name : Setup PHP environment
37- uses : shivammathur/setup-php@ed52ff9a52991475b075a4c2144f7276195e8620 # pin@v2
38+ uses : shivammathur/setup-php@e2e76ea34f2059c0d66bf5c54ea75610185397f3 # pin@v2
3839 with :
3940 php-version : ${{ matrix.php }}
4041 extensions : ${{ env.extensions }}
4142 ini-values : ${{ env.ini }}
4243 coverage : pcov
43- tools : phpunit:9.5.4 , psalm:4.7.1
44+ tools : phpunit:9.5.10 , psalm:4.11.2
4445
4546 - name : Setup problem matchers
4647 run : |
5253 run : echo "::set-output name=dir::$(composer config cache-files-dir)"
5354
5455 - name : Cache dependencies
55- uses : actions/cache@1c6fb82ebbd610035c324e764e5e74d0e82f8a60 # pin@v2
56+ uses : actions/cache@c64c572235d810460d0d6876e9c705ad5002b353 # pin@v2
5657 with :
5758 path : ${{ steps.composerCache.outputs.dir }}
5859 key : ${{ runner.os }}-composer-${{ matrix.dependencies }}-${{ hashFiles('**/composer.lock') }}
6667
6768 - name : Cache analysis data
6869 id : finishPrepare
69- uses : actions/cache@1c6fb82ebbd610035c324e764e5e74d0e82f8a60 # pin@v2
70+ uses : actions/cache@c64c572235d810460d0d6876e9c705ad5002b353 # pin@v2
7071 with :
7172 path : ~/.cache/psalm
7273 key : backend-analysis-${{ matrix.php }}-v1
8081 run : psalm --output-format=github --php-version=${{ matrix.php }}
8182
8283 - name : Upload coverage results to Codecov
83- uses : codecov/codecov-action@a1ed4b322b4b38cb846afb5a0ebfa17086917d27 # pin@v1
84+ uses : codecov/codecov-action@f32b3a3741e1053eb607407145bc9619351dc93b # pin@v1
8485 with :
8586 file : ${{ github.workspace }}/clover.xml
8687 flags : backend
@@ -92,39 +93,40 @@ jobs:
9293 name : Analysis
9394
9495 runs-on : ubuntu-latest
96+ timeout-minutes : 5
9597 env :
9698 php : " 8.0"
9799 extensions : mbstring
98100
99101 steps :
100102 - name : Checkout
101- uses : actions/checkout@f1d3225b5376a0791fdee5a0e8eac5289355e43a # pin@v2
103+ uses : actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # pin@v2
102104
103105 - name : Setup PHP cache environment
104106 id : ext-cache
105- uses : shivammathur/cache-extensions@8828d749a642ae651470bd7713c2266c82cac102 # pin@v1
107+ uses : shivammathur/cache-extensions@2e789925e438042ecda2b83f0fd00bbc016da76e # pin@v1
106108 with :
107109 php-version : ${{ env.php }}
108110 extensions : ${{ env.extensions }}
109- key : php-analysis- v1
111+ key : php-v1
110112
111113 - name : Cache PHP extensions
112- uses : actions/cache@1c6fb82ebbd610035c324e764e5e74d0e82f8a60 # pin@v2
114+ uses : actions/cache@c64c572235d810460d0d6876e9c705ad5002b353 # pin@v2
113115 with :
114116 path : ${{ steps.ext-cache.outputs.dir }}
115117 key : ${{ steps.ext-cache.outputs.key }}
116118 restore-keys : ${{ steps.ext-cache.outputs.key }}
117119
118120 - name : Setup PHP environment
119121 id : finishPrepare
120- uses : shivammathur/setup-php@ed52ff9a52991475b075a4c2144f7276195e8620 # pin@v2
122+ uses : shivammathur/setup-php@e2e76ea34f2059c0d66bf5c54ea75610185397f3 # pin@v2
121123 with :
122124 php-version : ${{ env.php }}
123125 extensions : ${{ env.extensions }}
124126 coverage : none
125127 tools : |
126- composer:2.0.13 , composer-normalize:2.13.3 , composer-require-checker:3.2 .0,
127- composer-unused:0.7.5 , phpcpd:6.0.3, phpmd:2.10.0
128+ composer:2.1.10 , composer-normalize:2.15.0 , composer-require-checker:3.3 .0,
129+ composer-unused:0.7.7 , phpcpd:6.0.3, phpmd:2.10.2
128130
129131 - name : Validate composer.json/composer.lock
130132 if : always() && steps.finishPrepare.outcome == 'success'
@@ -142,7 +144,7 @@ jobs:
142144 - name : Cache dependencies
143145 id : composerCache2
144146 if : always() && steps.composerCache1.outcome == 'success'
145- uses : actions/cache@1c6fb82ebbd610035c324e764e5e74d0e82f8a60 # pin@v2
147+ uses : actions/cache@c64c572235d810460d0d6876e9c705ad5002b353 # pin@v2
146148 with :
147149 path : ${{ steps.composerCache1.outputs.dir }}
148150 key : ${{ runner.os }}-composer-locked-${{ hashFiles('**/composer.lock') }}
@@ -173,33 +175,29 @@ jobs:
173175 name : Coding Style & Frontend Analysis
174176
175177 runs-on : ubuntu-latest
178+ timeout-minutes : 5
176179
177180 steps :
178181 - name : Checkout
179- uses : actions/checkout@f1d3225b5376a0791fdee5a0e8eac5289355e43a # pin@v2
180-
181- - name : Set up Node.js problem matchers
182- uses : actions/setup-node@0696555e99b7a8260864ca027af4b004eea59379 # pin@v2
182+ uses : actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # pin@v2
183183
184- - name : Cache npm dependencies
185- uses : actions/cache@1c6fb82ebbd610035c324e764e5e74d0e82f8a60 # pin@v2
184+ - name : Set up Node.js problem matchers and cache npm dependencies
185+ uses : actions/setup-node@04c56d2f954f1e4c69436aa54cfef261a018f458 # pin@v2
186186 with :
187- path : ~/.npm
188- key : ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
189- restore-keys : ${{ runner.os }}-node-
187+ cache : ' npm'
190188
191189 - name : Install npm dependencies
192190 run : npm ci
193191
194192 - name : Setup PHP environment
195- uses : shivammathur/setup-php@ed52ff9a52991475b075a4c2144f7276195e8620 # pin@v2
193+ uses : shivammathur/setup-php@e2e76ea34f2059c0d66bf5c54ea75610185397f3 # pin@v2
196194 with :
197195 coverage : none
198- tools : php-cs-fixer:3.0.0
196+ tools : php-cs-fixer:3.2.1
199197
200198 - name : Cache analysis data
201199 id : finishPrepare
202- uses : actions/cache@1c6fb82ebbd610035c324e764e5e74d0e82f8a60 # pin@v2
200+ uses : actions/cache@c64c572235d810460d0d6876e9c705ad5002b353 # pin@v2
203201 with :
204202 path : ~/.php-cs-fixer
205203 key : coding-style
@@ -215,7 +213,7 @@ jobs:
215213 if : >
216214 always() && steps.finishPrepare.outcome == 'success' &&
217215 github.event_name == 'pull_request'
218- uses : reviewdog/action-suggester@5d5b9f8c693e036796f828e47886bd10d368c273 # pin@v1
216+ uses : reviewdog/action-suggester@1b18099af6c3c023256eb87a27aab5623e9b934d # pin@v1
219217 with :
220218 tool_name : ESLint
221219 fail_on_error : ' true'
@@ -233,7 +231,7 @@ jobs:
233231 if : >
234232 always() && steps.finishPrepare.outcome == 'success' &&
235233 github.event_name == 'pull_request'
236- uses : reviewdog/action-suggester@5d5b9f8c693e036796f828e47886bd10d368c273 # pin@v1
234+ uses : reviewdog/action-suggester@1b18099af6c3c023256eb87a27aab5623e9b934d # pin@v1
237235 with :
238236 tool_name : PHP-CS-Fixer
239237 fail_on_error : ' true'
0 commit comments