Skip to content

Commit bbbe2e7

Browse files
committed
Build/Test: Limit PHPUnit Matrix for Pull Requests.
Instead of Pull Requests initiating 300+ actions, this brings it down closer to 50. This should allow more concurrent pull requests and speed up the flow. Relevant Slack Discussion: https://wordpress.slack.com/archives/C02RQBWTW/p1761040717220989 Props youknowriad, ellatrix. See #63167 git-svn-id: https://develop.svn.wordpress.org/trunk@61018 602fd350-edb4-49c9-b593-d223f7449a82
1 parent b932ba0 commit bbbe2e7

File tree

1 file changed

+273
-0
lines changed

1 file changed

+273
-0
lines changed

.github/workflows/phpunit-tests.yml

Lines changed: 273 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ jobs:
7171
strategy:
7272
fail-fast: false
7373
matrix:
74+
event: ['${{ github.event_name }}']
7475
os: [ ubuntu-24.04 ]
7576
php: [ '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5' ]
7677
db-type: [ 'mysql' ]
@@ -79,6 +80,64 @@ jobs:
7980
multisite: [ false, true ]
8081
memcached: [ false ]
8182

83+
exclude:
84+
# Trim the matrix on Pull Requests to reduce the number of concurrent jobs.
85+
# Each PHP version is tested againgst one version of MySQL.
86+
- event: pull_request
87+
php: '7.2'
88+
db-version: '8.0'
89+
- event: pull_request
90+
php: '7.2'
91+
db-version: '8.4'
92+
- event: pull_request
93+
php: '7.3'
94+
db-version: '5.7'
95+
- event: pull_request
96+
php: '7.3'
97+
db-version: '8.4'
98+
- event: pull_request
99+
php: '7.4'
100+
db-version: '5.7'
101+
- event: pull_request
102+
php: '7.4'
103+
db-version: '8.0'
104+
- event: pull_request
105+
php: '8.0'
106+
db-version: '8.0'
107+
- event: pull_request
108+
php: '8.0'
109+
db-version: '8.4'
110+
- event: pull_request
111+
php: '8.1'
112+
db-version: '5.7'
113+
- event: pull_request
114+
php: '8.1'
115+
db-version: '8.4'
116+
- event: pull_request
117+
php: '8.2'
118+
db-version: '5.7'
119+
- event: pull_request
120+
php: '8.2'
121+
db-version: '8.0'
122+
- event: pull_request
123+
php: '8.3'
124+
db-version: '8.0'
125+
- event: pull_request
126+
php: '8.3'
127+
db-version: '8.4'
128+
- event: pull_request
129+
php: '8.4'
130+
db-version: '5.7'
131+
- event: pull_request
132+
php: '8.4'
133+
db-version: '8.4'
134+
- event: pull_request
135+
php: '8.5'
136+
db-version: '5.7'
137+
- event: pull_request
138+
php: '8.5'
139+
db-version: '8.0'
140+
82141
include:
83142
# Include jobs that test with memcached.
84143
- os: ubuntu-24.04
@@ -148,13 +207,208 @@ jobs:
148207
strategy:
149208
fail-fast: false
150209
matrix:
210+
event: ['${{ github.event_name }}']
151211
os: [ ubuntu-24.04 ]
152212
php: [ '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5' ]
153213
db-type: [ 'mariadb' ]
154214
db-version: [ '5.5', '10.3', '10.4', '10.5', '10.6', '10.11', '11.4', '11.8' ]
155215
multisite: [ false, true ]
156216
memcached: [ false ]
157217

218+
exclude:
219+
# Trim the matrix on Pull Requests to reduce the number of concurrent jobs.
220+
# Each PHP version is tested against one version of MariaDB.
221+
# Each MariaDB version is tested at least once.
222+
- event: pull_request
223+
php: '7.2'
224+
db-version: '10.3'
225+
- event: pull_request
226+
php: '7.2'
227+
db-version: '10.4'
228+
- event: pull_request
229+
php: '7.2'
230+
db-version: '10.5'
231+
- event: pull_request
232+
php: '7.2'
233+
db-version: '10.6'
234+
- event: pull_request
235+
php: '7.2'
236+
db-version: '10.11'
237+
- event: pull_request
238+
php: '7.2'
239+
db-version: '11.4'
240+
- event: pull_request
241+
php: '7.2'
242+
db-version: '11.8'
243+
- event: pull_request
244+
php: '7.3'
245+
db-version: '5.5'
246+
- event: pull_request
247+
php: '7.3'
248+
db-version: '10.4'
249+
- event: pull_request
250+
php: '7.3'
251+
db-version: '10.5'
252+
- event: pull_request
253+
php: '7.3'
254+
db-version: '10.6'
255+
- event: pull_request
256+
php: '7.3'
257+
db-version: '10.11'
258+
- event: pull_request
259+
php: '7.3'
260+
db-version: '11.4'
261+
- event: pull_request
262+
php: '7.3'
263+
db-version: '11.8'
264+
- event: pull_request
265+
php: '7.4'
266+
db-version: '5.5'
267+
- event: pull_request
268+
php: '7.4'
269+
db-version: '10.3'
270+
- event: pull_request
271+
php: '7.4'
272+
db-version: '10.5'
273+
- event: pull_request
274+
php: '7.4'
275+
db-version: '10.6'
276+
- event: pull_request
277+
php: '7.4'
278+
db-version: '10.11'
279+
- event: pull_request
280+
php: '7.4'
281+
db-version: '11.4'
282+
- event: pull_request
283+
php: '7.4'
284+
db-version: '11.8'
285+
- event: pull_request
286+
php: '8.0'
287+
db-version: '5.5'
288+
- event: pull_request
289+
php: '8.0'
290+
db-version: '10.3'
291+
- event: pull_request
292+
php: '8.0'
293+
db-version: '10.4'
294+
- event: pull_request
295+
php: '8.0'
296+
db-version: '10.6'
297+
- event: pull_request
298+
php: '8.0'
299+
db-version: '10.11'
300+
- event: pull_request
301+
php: '8.0'
302+
db-version: '11.4'
303+
- event: pull_request
304+
php: '8.0'
305+
db-version: '11.8'
306+
- event: pull_request
307+
php: '8.1'
308+
db-version: '5.5'
309+
- event: pull_request
310+
php: '8.1'
311+
db-version: '10.3'
312+
- event: pull_request
313+
php: '8.1'
314+
db-version: '10.4'
315+
- event: pull_request
316+
php: '8.1'
317+
db-version: '10.5'
318+
- event: pull_request
319+
php: '8.1'
320+
db-version: '10.11'
321+
- event: pull_request
322+
php: '8.1'
323+
db-version: '11.4'
324+
- event: pull_request
325+
php: '8.1'
326+
db-version: '11.8'
327+
- event: pull_request
328+
php: '8.2'
329+
db-version: '5.5'
330+
- event: pull_request
331+
php: '8.2'
332+
db-version: '10.3'
333+
- event: pull_request
334+
php: '8.2'
335+
db-version: '10.4'
336+
- event: pull_request
337+
php: '8.2'
338+
db-version: '10.5'
339+
- event: pull_request
340+
php: '8.2'
341+
db-version: '10.6'
342+
- event: pull_request
343+
php: '8.2'
344+
db-version: '11.4'
345+
- event: pull_request
346+
php: '8.2'
347+
db-version: '11.8'
348+
- event: pull_request
349+
php: '8.3'
350+
db-version: '5.5'
351+
- event: pull_request
352+
php: '8.3'
353+
db-version: '10.3'
354+
- event: pull_request
355+
php: '8.3'
356+
db-version: '10.4'
357+
- event: pull_request
358+
php: '8.3'
359+
db-version: '10.5'
360+
- event: pull_request
361+
php: '8.3'
362+
db-version: '10.6'
363+
- event: pull_request
364+
php: '8.3'
365+
db-version: '10.11'
366+
- event: pull_request
367+
php: '8.3'
368+
db-version: '11.8'
369+
- event: pull_request
370+
php: '8.4'
371+
db-version: '5.5'
372+
- event: pull_request
373+
php: '8.4'
374+
db-version: '10.3'
375+
- event: pull_request
376+
php: '8.4'
377+
db-version: '10.4'
378+
- event: pull_request
379+
php: '8.4'
380+
db-version: '10.5'
381+
- event: pull_request
382+
php: '8.4'
383+
db-version: '10.6'
384+
- event: pull_request
385+
php: '8.4'
386+
db-version: '10.11'
387+
- event: pull_request
388+
php: '8.4'
389+
db-version: '11.4'
390+
- event: pull_request
391+
php: '8.5'
392+
db-version: '5.5'
393+
- event: pull_request
394+
php: '8.5'
395+
db-version: '10.3'
396+
- event: pull_request
397+
php: '8.5'
398+
db-version: '10.4'
399+
- event: pull_request
400+
php: '8.5'
401+
db-version: '10.5'
402+
- event: pull_request
403+
php: '8.5'
404+
db-version: '10.6'
405+
- event: pull_request
406+
php: '8.5'
407+
db-version: '10.11'
408+
- event: pull_request
409+
php: '8.5'
410+
db-version: '11.4'
411+
158412
include:
159413
# Include jobs that test with memcached.
160414
- os: ubuntu-24.04
@@ -200,6 +454,7 @@ jobs:
200454
strategy:
201455
fail-fast: false
202456
matrix:
457+
event: ['${{ github.event_name }}']
203458
os: [ ubuntu-24.04 ]
204459
php: [ '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5' ]
205460
db-type: [ 'mysql', 'mariadb' ]
@@ -219,6 +474,24 @@ jobs:
219474
db-version: '9.4'
220475
- db-type: 'mysql'
221476
db-version: '12.0'
477+
# On Pull requests, only test each innovation release once.
478+
- event: pull_request
479+
php: '7.3'
480+
- event: pull_request
481+
php: '7.4'
482+
- event: pull_request
483+
php: '8.0'
484+
- event: pull_request
485+
php: '8.1'
486+
- event: pull_request
487+
php: '8.1'
488+
- event: pull_request
489+
php: '8.2'
490+
- event: pull_request
491+
php: '8.4'
492+
- event: pull_request
493+
php: '8.5'
494+
222495
with:
223496
os: ${{ matrix.os }}
224497
php: ${{ matrix.php }}

0 commit comments

Comments
 (0)