@@ -260,7 +260,7 @@ jobs:
260
260
free-threading : ${{ matrix.free-threading }}
261
261
os : ${{ matrix.os }}
262
262
263
- build-ubuntu-ssltests :
263
+ build-ubuntu-ssltests-openssl :
264
264
name : ' Ubuntu SSL tests with OpenSSL'
265
265
runs-on : ${{ matrix.os }}
266
266
timeout-minutes : 60
@@ -322,6 +322,81 @@ jobs:
322
322
- name : SSL tests
323
323
run : ./python Lib/test/ssltests.py
324
324
325
+ build-ubuntu-ssltests-awslc :
326
+ name : ' Ubuntu SSL tests with AWS-LC'
327
+ runs-on : ${{ matrix.os }}
328
+ timeout-minutes : 60
329
+ needs : build-context
330
+ if : needs.build-context.outputs.run-tests == 'true'
331
+ strategy :
332
+ fail-fast : false
333
+ matrix :
334
+ os : [ubuntu-24.04]
335
+ awslc_ver : [1.55.0]
336
+ env :
337
+ AWSLC_VER : ${{ matrix.awslc_ver}}
338
+ MULTISSL_DIR : ${{ github.workspace }}/multissl
339
+ OPENSSL_DIR : ${{ github.workspace }}/multissl/aws-lc/${{ matrix.awslc_ver }}
340
+ LD_LIBRARY_PATH : ${{ github.workspace }}/multissl/aws-lc/${{ matrix.awslc_ver }}/lib
341
+ steps :
342
+ - uses : actions/checkout@v4
343
+ with :
344
+ persist-credentials : false
345
+ - name : Runner image version
346
+ run : echo "IMAGE_OS_VERSION=${ImageOS}-${ImageVersion}" >> "$GITHUB_ENV"
347
+ - name : Restore config.cache
348
+ uses : actions/cache@v4
349
+ with :
350
+ path : config.cache
351
+ key : ${{ github.job }}-${{ env.IMAGE_OS_VERSION }}-${{ needs.build-context.outputs.config-hash }}
352
+ - name : Register gcc problem matcher
353
+ run : echo "::add-matcher::.github/problem-matchers/gcc.json"
354
+ - name : Install dependencies
355
+ run : sudo ./.github/workflows/posix-deps-apt.sh
356
+ - name : Configure SSL lib env vars
357
+ run : |
358
+ echo "MULTISSL_DIR=${GITHUB_WORKSPACE}/multissl" >> "$GITHUB_ENV"
359
+ echo "OPENSSL_DIR=${GITHUB_WORKSPACE}/multissl/aws-lc/${AWSLC_VER}" >> "$GITHUB_ENV"
360
+ echo "LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/multissl/aws-lc/${AWSLC_VER}/lib" >> "$GITHUB_ENV"
361
+ - name : ' Restore AWS-LC build'
362
+ id : cache-aws-lc
363
+ uses : actions/cache@v4
364
+ with :
365
+ path : ./multissl/aws-lc/${{ matrix.awslc_ver }}
366
+ key : ${{ matrix.os }}-multissl-aws-lc-${{ matrix.awslc_ver }}
367
+ - name : Install AWS-LC
368
+ if : steps.cache-aws-lc.outputs.cache-hit != 'true'
369
+ run : |
370
+ python3 Tools/ssl/multissltests.py \
371
+ --steps=library \
372
+ --base-directory "$MULTISSL_DIR" \
373
+ --awslc ${{ matrix.awslc_ver }} \
374
+ --system Linux
375
+ - name : Add ccache to PATH
376
+ run : |
377
+ echo "PATH=/usr/lib/ccache:$PATH" >> "$GITHUB_ENV"
378
+ - name : Configure ccache action
379
+ uses :
hendrikmuhs/[email protected]
380
+ with :
381
+ save : false
382
+ - name : Configure CPython
383
+ run : |
384
+ ./configure CFLAGS="-fdiagnostics-format=json" \
385
+ --config-cache \
386
+ --enable-slower-safety \
387
+ --with-pydebug \
388
+ --with-openssl="$OPENSSL_DIR" \
389
+ --with-builtin-hashlib-hashes=blake2 \
390
+ --with-ssl-default-suites=openssl
391
+ - name : Build CPython
392
+ run : make -j
393
+ - name : Display build info
394
+ run : make pythoninfo
395
+ - name : Verify python is linked to AWS-LC
396
+ run : ./python -c 'import ssl; print(ssl.OPENSSL_VERSION)' | grep AWS-LC
397
+ - name : SSL tests
398
+ run : ./python Lib/test/ssltests.py
399
+
325
400
build-wasi :
326
401
name : ' WASI'
327
402
needs : build-context
@@ -628,7 +703,8 @@ jobs:
628
703
- build-windows-msi
629
704
- build-macos
630
705
- build-ubuntu
631
- - build-ubuntu-ssltests
706
+ - build-ubuntu-ssltests-awslc
707
+ - build-ubuntu-ssltests-openssl
632
708
- build-wasi
633
709
- test-hypothesis
634
710
- build-asan
@@ -643,7 +719,8 @@ jobs:
643
719
with :
644
720
allowed-failures : >-
645
721
build-windows-msi,
646
- build-ubuntu-ssltests,
722
+ build-ubuntu-ssltests-awslc,
723
+ build-ubuntu-ssltests-openssl,
647
724
test-hypothesis,
648
725
cifuzz,
649
726
allowed-skips : >-
@@ -661,7 +738,8 @@ jobs:
661
738
check-generated-files,
662
739
build-macos,
663
740
build-ubuntu,
664
- build-ubuntu-ssltests,
741
+ build-ubuntu-ssltests-awslc,
742
+ build-ubuntu-ssltests-openssl,
665
743
build-wasi,
666
744
test-hypothesis,
667
745
build-asan,
0 commit comments