1# Copyright 2021-2024 The OpenSSL Project Authors. All Rights Reserved. 2# 3# Licensed under the Apache License 2.0 (the "License"). You may not use 4# this file except in compliance with the License. You can obtain a copy 5# in the file LICENSE in the source distribution or at 6# https://www.openssl.org/source/license.html 7 8# Jobs run per pull request submission 9name: Run-checker CI 10on: [pull_request, push] 11permissions: 12 contents: read 13 14env: 15 OSSL_RUN_CI_TESTS: 1 16 17jobs: 18 run-checker: 19 strategy: 20 fail-fast: false 21 matrix: 22 opt: [ 23 no-cmp, 24 no-cms, 25 no-dgram, 26 no-dh, 27 no-dtls, 28 no-ec, 29 no-ecx, 30 no-http, 31 no-legacy, 32 no-sock, 33 enable-ssl-trace, 34 no-stdio, 35 no-threads, 36 no-thread-pool, 37 no-default-thread-pool, 38 no-tls, 39 no-tls1_2, 40 no-tls1_3, 41 enable-trace enable-fips, 42 no-ui, 43 no-quic 44 ] 45 runs-on: ubuntu-latest 46 steps: 47 - uses: actions/checkout@v4 48 - name: checkout fuzz/corpora submodule 49 run: git submodule update --init --depth 1 fuzz/corpora 50 - name: config 51 run: CC=clang ./config --banner=Configured --strict-warnings ${{ matrix.opt }} 52 - name: config dump 53 run: ./configdata.pm --dump 54 - name: make 55 run: make -s -j4 56 - name: get cpu info 57 run: | 58 cat /proc/cpuinfo 59 if [ -x apps/openssl ] ; then ./util/opensslwrap.sh version -c ; fi 60 - name: Check platform symbol usage 61 run: ./util/checkplatformsyms.pl ./util/platform_symbols/unix-symbols.txt ./libcrypto.so ./libssl.so 62 - name: make test 63 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} 64