89
89
Doc/**
90
90
Misc/**
91
91
.github/workflows/reusable-docs.yml
92
+ format : csv # works for paths with spaces
92
93
- name : Check for docs changes
93
94
if : >-
94
95
github.event_name == 'pull_request'
@@ -123,10 +124,10 @@ jobs:
123
124
run : echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
124
125
- name : Configure ccache action
125
126
uses :
hendrikmuhs/[email protected]
126
- - name : Check Autoconf version 2.69 and aclocal 1.16.3
127
+ - name : Check Autoconf and aclocal versions
127
128
run : |
128
- grep "Generated by GNU Autoconf 2.69 " configure
129
- grep "aclocal 1.16.3 " aclocal.m4
129
+ grep "Generated by GNU Autoconf 2.71 " configure
130
+ grep "aclocal 1.16.4 " aclocal.m4
130
131
grep -q "runstatedir" configure
131
132
grep -q "PKG_PROG_PKG_CONFIG" aclocal.m4
132
133
- name : Configure CPython
@@ -219,17 +220,16 @@ jobs:
219
220
path : config.cache
220
221
key : ${{ github.job }}-${{ runner.os }}-${{ needs.check_source.outputs.config_hash }}
221
222
- name : Install Homebrew dependencies
222
- run : brew install pkg-config openssl@1.1 xz gdbm tcl-tk
223
+ run : brew install pkg-config openssl@3.0 xz gdbm tcl-tk
223
224
- name : Configure CPython
224
225
run : |
225
- CFLAGS="-I$(brew --prefix gdbm)/include -I$(brew --prefix xz)/include" \
226
- LDFLAGS="-L$(brew --prefix gdbm)/lib -I$(brew --prefix xz)/lib" \
227
- PKG_CONFIG_PATH="$(brew --prefix tcl-tk)/lib/pkgconfig" \
226
+ GDBM_CFLAGS="-I$(brew --prefix gdbm)/include" \
227
+ GDBM_LIBS="-L$(brew --prefix gdbm)/lib -lgdbm" \
228
228
./configure \
229
229
--config-cache \
230
230
--with-pydebug \
231
231
--prefix=/opt/python-dev \
232
- --with-openssl="$(brew --prefix openssl@1.1 )"
232
+ --with-openssl="$(brew --prefix openssl@3.0 )"
233
233
- name : Build CPython
234
234
run : make -j4
235
235
- name : Display build info
@@ -244,7 +244,7 @@ jobs:
244
244
needs : check_source
245
245
if : needs.check_source.outputs.run_tests == 'true'
246
246
env :
247
- OPENSSL_VER : 1.1.1t
247
+ OPENSSL_VER : 1.1.1u
248
248
PYTHONSTRICTEXTENSIONBUILD : 1
249
249
steps :
250
250
- uses : actions/checkout@v3
@@ -313,7 +313,7 @@ jobs:
313
313
strategy :
314
314
fail-fast : false
315
315
matrix :
316
- openssl_ver : [1.1.1t , 3.0.8 , 3.1.0-beta1 ]
316
+ openssl_ver : [1.1.1u , 3.0.9 , 3.1.1 ]
317
317
env :
318
318
OPENSSL_VER : ${{ matrix.openssl_ver }}
319
319
MULTISSL_DIR : ${{ github.workspace }}/multissl
@@ -365,7 +365,7 @@ jobs:
365
365
needs : check_source
366
366
if : needs.check_source.outputs.run_tests == 'true' && needs.check_source.outputs.run_hypothesis == 'true'
367
367
env :
368
- OPENSSL_VER : 1.1.1t
368
+ OPENSSL_VER : 1.1.1u
369
369
PYTHONSTRICTEXTENSIONBUILD : 1
370
370
steps :
371
371
- uses : actions/checkout@v3
@@ -474,7 +474,7 @@ jobs:
474
474
needs : check_source
475
475
if : needs.check_source.outputs.run_tests == 'true'
476
476
env :
477
- OPENSSL_VER : 1.1.1t
477
+ OPENSSL_VER : 1.1.1u
478
478
PYTHONSTRICTEXTENSIONBUILD : 1
479
479
ASAN_OPTIONS : detect_leaks=0:allocator_may_return_null=1:handle_segv=0
480
480
steps :
@@ -519,3 +519,60 @@ jobs:
519
519
run : make pythoninfo
520
520
- name : Tests
521
521
run : xvfb-run make buildbottest TESTOPTS="-j4 -uall,-cpu"
522
+
523
+ all-required-green : # This job does nothing and is only used for the branch protection
524
+ name : All required checks pass
525
+ if : always()
526
+
527
+ needs :
528
+ - check_source # Transitive dependency, needed to access `run_tests` value
529
+ - check-docs
530
+ - check_generated_files
531
+ - build_win32
532
+ - build_win_amd64
533
+ - build_macos
534
+ - build_ubuntu
535
+ - build_ubuntu_ssltests
536
+ - test_hypothesis
537
+ - build_asan
538
+
539
+ runs-on : ubuntu-latest
540
+
541
+ steps :
542
+ - name : Check whether the needed jobs succeeded or failed
543
+ uses : re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe
544
+ with :
545
+ allowed-failures : >-
546
+ build_macos,
547
+ build_ubuntu_ssltests,
548
+ build_win32,
549
+ test_hypothesis,
550
+ allowed-skips : >-
551
+ ${{
552
+ !fromJSON(needs.check_source.outputs.run-docs)
553
+ && '
554
+ check-docs,
555
+ '
556
+ || ''
557
+ }}
558
+ ${{
559
+ needs.check_source.outputs.run_tests != 'true'
560
+ && '
561
+ check_generated_files,
562
+ build_win32,
563
+ build_win_amd64,
564
+ build_macos,
565
+ build_ubuntu,
566
+ build_ubuntu_ssltests,
567
+ build_asan,
568
+ '
569
+ || ''
570
+ }}
571
+ ${{
572
+ !fromJSON(needs.check_source.outputs.run_hypothesis)
573
+ && '
574
+ test_hypothesis,
575
+ '
576
+ || ''
577
+ }}
578
+ jobs : ${{ toJSON(needs) }}
0 commit comments