11
11
# also version tags, which include bugfix releases (eg: v3.4.0)
12
12
- v[0-9]+.[0-9]+.[0-9]+
13
13
pull_request :
14
- type : [opened, reopened, edited ]
14
+ types : [opened, reopened, synchronize ]
15
15
branches :
16
16
# Only for PRs targeting those branches
17
17
- master
44
44
# NOTE: We always want to run job on master since we run some additional checks there (code
45
45
# coverage, etc)
46
46
# if: ${{ needs.pre_job.outputs.should_skip != 'true' || github.ref == 'refs/heads/master' }}
47
- name : ' ${{ matrix.name }} - Python ${{ matrix.python- version-short }}'
47
+ name : ' ${{ matrix.make. name }} - Python ${{ matrix.python. version-short }}'
48
48
runs-on : ubuntu-20.04
49
49
strategy :
50
50
fail-fast : false
@@ -53,26 +53,18 @@ jobs:
53
53
# each job runs subset of tests.
54
54
# NOTE: We need to use full Python version as part of Python deps cache key otherwise
55
55
# setup virtualenv step will fail.
56
- include :
56
+ python :
57
+ - {version-short: '3.8', version: '3.8.10'}
58
+ - {version-short: '3.9', version: '3.9.14'}
59
+ - {version-short: '3.10', version: '3.10.15'}
60
+ - {version-short: '3.11', version: '3.11.10'}
61
+ make :
57
62
- name : ' Lint Checks (black, flake8, etc.)'
58
63
task : ' ci-checks'
59
- python-version-short : ' 3.8'
60
- python-version : ' 3.8.10'
61
64
- name : ' Compile (pip deps, pylint, etc.)'
62
65
task : ' ci-compile'
63
- python-version-short : ' 3.8'
64
- python-version : ' 3.8.10'
65
- - name : ' Lint Checks (black, flake8, etc.)'
66
- task : ' ci-checks'
67
- python-version-short : ' 3.9'
68
- python-version : ' 3.9.14'
69
- - name : ' Compile (pip deps, pylint, etc.)'
70
- task : ' ci-compile'
71
- python-version-short : ' 3.9'
72
- python-version : ' 3.9.14'
73
-
74
66
env :
75
- TASK : ' ${{ matrix.task }}'
67
+ TASK : ' ${{ matrix.make. task }}'
76
68
COLUMNS : ' 120'
77
69
PYLINT_CONCURRENCY : ' 6'
78
70
steps :
@@ -81,10 +73,10 @@ jobs:
81
73
- name : Custom Environment Setup
82
74
run : |
83
75
./scripts/github/setup-environment.sh
84
- - name : ' Set up Python (${{ matrix.python- version }}) and Cache Deps'
76
+ - name : ' Set up Python (${{ matrix.python. version }}) and Cache Deps'
85
77
uses : ./.github/actions/setup-python
86
78
with :
87
- python-version : ' ${{ matrix.python- version }}'
79
+ python-version : ' ${{ matrix.python. version }}'
88
80
- name : Cache and Install APT Dependencies
89
81
uses : ./.github/actions/apt-packages
90
82
- name : Install virtualenv
@@ -109,15 +101,14 @@ jobs:
109
101
110
102
self-check :
111
103
needs : pre_job
112
- name : ' ${{ matrix.name }} - Python ${{ matrix.python-version-short }}'
104
+ # FIXME: dropping the repetition in this name requires changing required checks on GitHub
105
+ name : ' Self-check on Python ${{ matrix.python.version-short }} - Python ${{ matrix.python.version-short }}'
113
106
runs-on : ubuntu-20.04
114
107
strategy :
115
108
fail-fast : false
116
109
matrix :
117
- include :
118
- - name : ' Self-check on Python 3.8'
119
- python-version-short : ' 3.8'
120
- python-version : ' 3.8.14'
110
+ python :
111
+ - {version-short: '3.8', version: '3.8.10'}
121
112
services :
122
113
mongo :
123
114
image : mongo:7.0
@@ -163,10 +154,10 @@ jobs:
163
154
- name : Custom Environment Setup
164
155
run : |
165
156
./scripts/github/setup-environment.sh
166
- - name : ' Set up Python (${{ matrix.python- version }}) and Cache Deps'
157
+ - name : ' Set up Python (${{ matrix.python. version }}) and Cache Deps'
167
158
uses : ./.github/actions/setup-python
168
159
with :
169
- python-version : ' ${{ matrix.python- version }}'
160
+ python-version : ' ${{ matrix.python. version }}'
170
161
- name : Cache and Install APT Dependencies
171
162
uses : ./.github/actions/apt-packages
172
163
- name : Install virtualenv
@@ -238,7 +229,7 @@ jobs:
238
229
if : ${{ failure() }}
239
230
uses : actions/upload-artifact@v4
240
231
with :
241
- name : logs-py${{ matrix.python- version }}
232
+ name : logs-py${{ matrix.python. version }}
242
233
path : logs.tar.gz
243
234
retention-days : 7
244
235
@@ -248,38 +239,29 @@ jobs:
248
239
# coverage, etc)
249
240
# NB: disabled. See TODO above pre_job
250
241
# if: ${{ needs.pre_job.outputs.should_skip != 'true' || github.ref == 'refs/heads/master' }}
251
- name : ' ${{ matrix.name }} - Python ${{ matrix.python- version-short }}'
242
+ name : ' ${{ matrix.make. name }} - Python ${{ matrix.python. version-short }}'
252
243
runs-on : ubuntu-20.04
253
244
strategy :
254
245
fail-fast : false
255
246
matrix :
256
247
# NOTE: To speed the CI run, we split unit and integration tests into multiple jobs where
257
248
# each job runs subset of tests.
258
- include :
259
- - name : ' Unit Tests (chunk 1)'
260
- task : ' ci-unit'
261
- shard : {k: 0, n: 2}
262
- python-version-short : ' 3.8'
263
- python-version : ' 3.8.10'
264
- - name : ' Unit Tests (chunk 2)'
265
- task : ' ci-unit'
266
- shard : {k: 1, n: 2}
267
- python-version-short : ' 3.8'
268
- python-version : ' 3.8.10'
249
+ python :
250
+ - {version-short: '3.8', version: '3.8.10'}
251
+ - {version-short: '3.9', version: '3.9.14'}
252
+ - {version-short: '3.10', version: '3.10.15'}
253
+ - {version-short: '3.11', version: '3.11.10'}
254
+ make :
269
255
- name : ' Unit Tests (chunk 1)'
270
256
task : ' ci-unit'
271
257
shard : {k: 0, n: 2}
272
- python-version-short : ' 3.9'
273
- python-version : ' 3.9.14'
274
258
- name : ' Unit Tests (chunk 2)'
275
259
task : ' ci-unit'
276
260
shard : {k: 1, n: 2}
277
- python-version-short : ' 3.9'
278
- python-version : ' 3.9.14'
261
+
279
262
# This job is slow so we only run in on a daily basis
280
263
# - name: 'Micro Benchmarks'
281
264
# task: 'micro-benchmarks'
282
- # python-version: '3.6.13'
283
265
# shard: {k: 0, n: 1}
284
266
services :
285
267
mongo :
@@ -310,10 +292,10 @@ jobs:
310
292
- 15672:15672/tcp # Management: HTTP, CLI
311
293
312
294
env :
313
- TASK : ' ${{ matrix.task }}'
314
- PYTHON_VERSION_SHORT : ' ${{ matrix.python- version-short }}'
315
- NODE_TOTAL : ' ${{ matrix.shard.n }}'
316
- NODE_INDEX : ' ${{ matrix.shard.k }}'
295
+ TASK : ' ${{ matrix.make. task }}'
296
+ PYTHON_VERSION_SHORT : ' ${{ matrix.python. version-short }}'
297
+ NODE_TOTAL : ' ${{ matrix.make. shard.n }}'
298
+ NODE_INDEX : ' ${{ matrix.make. shard.k }}'
317
299
318
300
# We need to explicitly specify terminal width otherwise some CLI tests fail on container
319
301
# environments where small terminal size is used.
@@ -339,10 +321,10 @@ jobs:
339
321
- name : Custom Environment Setup
340
322
run : |
341
323
./scripts/github/setup-environment.sh
342
- - name : ' Set up Python (${{ matrix.python- version }}) and Cache Deps'
324
+ - name : ' Set up Python (${{ matrix.python. version }}) and Cache Deps'
343
325
uses : ./.github/actions/setup-python
344
326
with :
345
- python-version : ' ${{ matrix.python- version }}'
327
+ python-version : ' ${{ matrix.python. version }}'
346
328
- name : Cache and Install APT Dependencies
347
329
uses : ./.github/actions/apt-packages
348
330
- name : Install virtualenv
@@ -400,46 +382,30 @@ jobs:
400
382
# NOTE: We always want to run job on master since we run some additional checks there (code
401
383
# coverage, etc)
402
384
# if: ${{ needs.pre_job.outputs.should_skip != 'true' || github.ref == 'refs/heads/master' }}
403
- name : ' ${{ matrix.name }} - Python ${{ matrix.python- version-short }}'
385
+ name : ' ${{ matrix.make. name }} - Python ${{ matrix.python. version-short }}'
404
386
runs-on : ubuntu-20.04
405
387
strategy :
406
388
fail-fast : false
407
389
matrix :
408
390
# NOTE: To speed the CI run, we split unit and integration tests into multiple jobs where
409
391
# each job runs subset of tests.
410
- include :
392
+ python :
393
+ - {version-short: '3.8', version: '3.8.10'}
394
+ - {version-short: '3.9', version: '3.9.14'}
395
+ - {version-short: '3.10', version: '3.10.15'}
396
+ - {version-short: '3.11', version: '3.11.10'}
397
+ make :
411
398
# We run pack tests here since they rely on some integration tests set
412
399
# up (aka stanley user being present, etc.)
413
400
- name : ' Pack Tests'
414
401
task : ' ci-packs-tests'
415
402
shard : {k: 0, n: 1}
416
- python-version-short : ' 3.8'
417
- python-version : ' 3.8.10'
418
- - name : ' Integration Tests (chunk 1)'
419
- task : ' ci-integration'
420
- shard : {k: 0, n: 2}
421
- python-version-short : ' 3.8'
422
- python-version : ' 3.8.10'
423
- - name : ' Integration Tests (chunk 2)'
424
- task : ' ci-integration'
425
- shard : {k: 1, n: 2}
426
- python-version-short : ' 3.8'
427
- python-version : ' 3.8.10'
428
- - name : ' Pack Tests'
429
- task : ' ci-packs-tests'
430
- shard : {k: 0, n: 1}
431
- python-version-short : ' 3.9'
432
- python-version : ' 3.9.14'
433
403
- name : ' Integration Tests (chunk 1)'
434
404
task : ' ci-integration'
435
405
shard : {k: 0, n: 2}
436
- python-version-short : ' 3.9'
437
- python-version : ' 3.9.14'
438
406
- name : ' Integration Tests (chunk 2)'
439
407
task : ' ci-integration'
440
408
shard : {k: 1, n: 2}
441
- python-version-short : ' 3.9'
442
- python-version : ' 3.9.14'
443
409
services :
444
410
mongo :
445
411
image : mongo:7.0
@@ -491,10 +457,10 @@ jobs:
491
457
- 6379:6379/tcp
492
458
493
459
env :
494
- TASK : ' ${{ matrix.task }}'
495
- PYTHON_VERSION_SHORT : ' ${{ matrix.python- version-short }}'
496
- NODE_TOTAL : ' ${{ matrix.shard.n }}'
497
- NODE_INDEX : ' ${{ matrix.shard.k }}'
460
+ TASK : ' ${{ matrix.make. task }}'
461
+ PYTHON_VERSION_SHORT : ' ${{ matrix.python. version-short }}'
462
+ NODE_TOTAL : ' ${{ matrix.make. shard.n }}'
463
+ NODE_INDEX : ' ${{ matrix.make. shard.k }}'
498
464
499
465
# We need to explicitly specify terminal width otherwise some CLI tests fail on container
500
466
# environments where small terminal size is used.
@@ -521,10 +487,10 @@ jobs:
521
487
- name : Custom Environment Setup
522
488
run : |
523
489
./scripts/github/setup-environment.sh
524
- - name : ' Set up Python (${{ matrix.python- version }}) and Cache Deps'
490
+ - name : ' Set up Python (${{ matrix.python. version }}) and Cache Deps'
525
491
uses : ./.github/actions/setup-python
526
492
with :
527
- python-version : ' ${{ matrix.python- version }}'
493
+ python-version : ' ${{ matrix.python. version }}'
528
494
- name : Cache and Install APT Dependencies
529
495
uses : ./.github/actions/apt-packages
530
496
- name : Install virtualenv
@@ -580,7 +546,7 @@ jobs:
580
546
if : ${{ failure() && env.TASK == 'ci-integration' }}
581
547
uses : actions/upload-artifact@v4
582
548
with :
583
- name : logs-py${{ matrix.python- version }}-pytest-${{ matrix.shard.k }}
549
+ name : logs-py${{ matrix.python. version }}-pytest-${{ matrix.make .shard.k }}
584
550
path : logs.tar.gz
585
551
retention-days : 7
586
552
0 commit comments