2525permissions :
2626 contents : read
2727
28+ concurrency :
29+ group : ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
30+ cancel-in-progress : true
31+
2832jobs :
2933 check_source :
3034 name : ' Check for source changes'
3135 runs-on : ubuntu-latest
3236 outputs :
3337 run_tests : ${{ steps.check.outputs.run_tests }}
34- run_ssl_tests : ${{ steps.check.outputs.run_ssl_tests }}
3538 steps :
3639 - uses : actions/checkout@v3
3740 - name : Check for source changes
3841 id : check
3942 run : |
4043 if [ -z "$GITHUB_BASE_REF" ]; then
41- echo '::set-output name=run_tests::true'
42- echo '::set-output name=run_ssl_tests::true'
44+ echo "run_tests=true" >> $GITHUB_OUTPUT
4345 else
4446 git fetch origin $GITHUB_BASE_REF --depth=1
4547 # git diff "origin/$GITHUB_BASE_REF..." (3 dots) may be more
5557 # into the PR branch anyway.
5658 #
5759 # https://github.com/python/core-workflow/issues/373
58- git diff --name-only origin/$GITHUB_BASE_REF.. | grep -qvE '(\.rst$|^Doc|^Misc)' && echo '::set-output name=run_tests::true' || true
59- git diff --name-only origin/$GITHUB_BASE_REF.. | grep -qE '(ssl|hashlib|hmac|^.github)' && echo '::set-output name=run_ssl_tests::true' || true
60+ git diff --name-only origin/$GITHUB_BASE_REF.. | grep -qvE '(\.rst$|^Doc|^Misc)' && echo "run_tests=true" >> $GITHUB_OUTPUT || true
6061 fi
6162
6263 check_generated_files :
7273 - name : Add ccache to PATH
7374 run : echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
7475 - name : Configure ccache action
75- uses : hendrikmuhs/ccache-action@v1
76+ uses : hendrikmuhs/ccache-action@v1.2
7677 - name : Check Autoconf version 2.69 and aclocal 1.16.3
7778 run : |
7879 grep "Generated by GNU Autoconf 2.69" configure
@@ -153,15 +154,23 @@ jobs:
153154 needs : check_source
154155 if : needs.check_source.outputs.run_tests == 'true'
155156 env :
157+ HOMEBREW_NO_ANALYTICS : 1
158+ HOMEBREW_NO_AUTO_UPDATE : 1
159+ HOMEBREW_NO_INSTALL_CLEANUP : 1
156160 PYTHONSTRICTEXTENSIONBUILD : 1
157161 steps :
158162 - uses : actions/checkout@v3
159- - name : Prepare homebrew environment variables
160- run : |
161- echo "LDFLAGS=-L$(brew --prefix tcl-tk)/lib" >> $GITHUB_ENV
162- echo "PKG_CONFIG_PATH=$(brew --prefix [email protected] )/lib/pkgconfig:$(brew --prefix tcl-tk)/lib/pkgconfig" >> $GITHUB_ENV 163+ - name : Install Homebrew dependencies
164+ run :
brew install pkg-config [email protected] xz gdbm tcl-tk 163165 - name : Configure CPython
164- run : ./configure --with-pydebug --prefix=/opt/python-dev
166+ run : |
167+ CFLAGS="-I$(brew --prefix gdbm)/include -I$(brew --prefix xz)/include" \
168+ LDFLAGS="-L$(brew --prefix gdbm)/lib -I$(brew --prefix xz)/lib" \
169+ PKG_CONFIG_PATH="$(brew --prefix tcl-tk)/lib/pkgconfig" \
170+ ./configure \
171+ --with-pydebug \
172+ --prefix=/opt/python-dev \
173+ --with-openssl="$(brew --prefix [email protected] )" 165174 - name : Build CPython
166175 run : make -j4
167176 - name : Display build info
@@ -175,7 +184,7 @@ jobs:
175184 needs : check_source
176185 if : needs.check_source.outputs.run_tests == 'true'
177186 env :
178- OPENSSL_VER : 1.1.1q
187+ OPENSSL_VER : 1.1.1t
179188 PYTHONSTRICTEXTENSIONBUILD : 1
180189 steps :
181190 - uses : actions/checkout@v3
@@ -201,7 +210,7 @@ jobs:
201210 run : |
202211 echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
203212 - name : Configure ccache action
204- uses : hendrikmuhs/ccache-action@v1
213+ uses : hendrikmuhs/ccache-action@v1.2
205214 - name : Setup directory envs for out-of-tree builds
206215 run : |
207216 echo "CPYTHON_RO_SRCDIR=$(realpath -m ${GITHUB_WORKSPACE}/../cpython-ro-srcdir)" >> $GITHUB_ENV
@@ -230,11 +239,11 @@ jobs:
230239 name : ' Ubuntu SSL tests with OpenSSL'
231240 runs-on : ubuntu-20.04
232241 needs : check_source
233- if : needs.check_source.outputs.run_tests == 'true' && needs.check_source.outputs.run_ssl_tests == 'true'
242+ if : needs.check_source.outputs.run_tests == 'true'
234243 strategy :
235244 fail-fast : false
236245 matrix :
237- openssl_ver : [1.1.1q , 3.0.5 ]
246+ openssl_ver : [1.1.1t , 3.0.8, 3.1.0-beta1 ]
238247 env :
239248 OPENSSL_VER : ${{ matrix.openssl_ver }}
240249 MULTISSL_DIR : ${{ github.workspace }}/multissl
@@ -264,7 +273,7 @@ jobs:
264273 run : |
265274 echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
266275 - name : Configure ccache action
267- uses : hendrikmuhs/ccache-action@v1
276+ uses : hendrikmuhs/ccache-action@v1.2
268277 - name : Configure CPython
269278 run : ./configure --with-pydebug --with-openssl=$OPENSSL_DIR
270279 - name : Build CPython
@@ -281,7 +290,7 @@ jobs:
281290 needs : check_source
282291 if : needs.check_source.outputs.run_tests == 'true'
283292 env :
284- OPENSSL_VER : 1.1.1q
293+ OPENSSL_VER : 1.1.1t
285294 PYTHONSTRICTEXTENSIONBUILD : 1
286295 ASAN_OPTIONS : detect_leaks=0:allocator_may_return_null=1:handle_segv=0
287296 steps :
@@ -308,7 +317,7 @@ jobs:
308317 run : |
309318 echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
310319 - name : Configure ccache action
311- uses : hendrikmuhs/ccache-action@v1
320+ uses : hendrikmuhs/ccache-action@v1.2
312321 - name : Configure CPython
313322 run : ./configure --with-address-sanitizer --without-pymalloc
314323 - name : Build CPython
0 commit comments