@@ -18,23 +18,41 @@ jobs:
1818 with :
1919 wolfssl_ref : ${{ matrix.wolfssl_ref }}
2020 openssl_ref : ${{ matrix.openssl_ref }}
21+ replace_default : ${{ matrix.replace_default || false }}
2122 strategy :
2223 matrix :
2324 wolfssl_ref : [ 'master', 'v5.8.0-stable' ]
2425 openssl_ref : [ 'openssl-3.5.0' ]
26+ replace_default : [ false, true ]
27+ exclude :
28+ - wolfssl_ref : ' master'
29+ replace_default : true
2530
2631 test_cjose :
2732 runs-on : ubuntu-22.04
33+ container : ${{ matrix.replace_default && 'debian:bookworm' || null }}
34+ env :
35+ DEBIAN_FRONTEND : ${{ matrix.replace_default && 'noninteractive' || '' }}
2836 needs : build_wolfprovider
2937 # This should be a safe limit for the tests to run.
3038 timeout-minutes : 20
3139 strategy :
3240 matrix :
33- cjose_ref : [ 'master', ' v0.6.2.1' ]
41+ cjose_ref : [ 'v0.6.2.1' ]
3442 wolfssl_ref : [ 'master', 'v5.8.0-stable' ]
3543 openssl_ref : [ 'openssl-3.5.0' ]
3644 force_fail : [ 'WOLFPROV_FORCE_FAIL=1', '' ]
45+ replace_default : [ false, true ]
46+ exclude :
47+ - wolfssl_ref : ' master'
48+ replace_default : true
3749 steps :
50+ - name : Install dependencies (Docker only)
51+ if : ${{ matrix.replace_default }}
52+ run : |
53+ apt-get update
54+ apt-get install -y sudo curl jq
55+
3856 - name : Checkout wolfProvider
3957 uses : actions/checkout@v4
4058 with :
@@ -50,13 +68,19 @@ jobs:
5068 openssl-install/lib64
5169 openssl-install/include
5270 openssl-install/bin
71+ ${{ matrix.replace_default && 'libdefault-stub-install' || '' }}
5372
54- key : wolfprov-${{ matrix.wolfssl_ref }}-${{ matrix.openssl_ref }}-${{ github.sha }}
73+ key : wolfprov${{ matrix.replace_default && '-replace-default' || '' }}-${{ matrix.wolfssl_ref }}-${{ matrix.openssl_ref }}-${{ github.sha }}
74+ restore-keys : |
75+ wolfprov${{ matrix.replace_default && '-replace-default' || '' }}-${{ matrix.wolfssl_ref }}-${{ matrix.openssl_ref }}-
5576 fail-on-cache-miss : true
5677
5778 - name : Install cjose dependencies
5879 run : |
59- sudo apt-get install -y libjansson-dev check
80+ export DEBIAN_FRONTEND=noninteractive
81+ sudo apt-get update
82+ sudo apt-get install -y build-essential autoconf automake libtool \
83+ pkg-config gcc make libjansson-dev check
6084
6185 - name : Download cjose
6286 uses : actions/checkout@v4
@@ -68,18 +92,27 @@ jobs:
6892
6993 - name : Build cjose
7094 working-directory : cjose
95+ shell : bash
7196 run : |
97+ # Set up the environment for wolfProvider
98+ source $GITHUB_WORKSPACE/scripts/env-setup
99+
100+ # Set additional environment variables for OpenSSL
101+ export OPENSSL_INSTALL=$GITHUB_WORKSPACE/openssl-install
102+ export LDFLAGS="-L${OPENSSL_INSTALL}/lib64 -L${OPENSSL_INSTALL}/lib"
103+ export CPPFLAGS="-I${OPENSSL_INSTALL}/include"
104+ export PKG_CONFIG_PATH="${OPENSSL_INSTALL}/lib64/pkgconfig:${OPENSSL_INSTALL}/lib/pkgconfig:${PKG_CONFIG_PATH}"
105+
72106 # Configure with OpenSSL
73- ./configure CFLAGS="-Wno-error=deprecated-declarations" --with-openssl=$GITHUB_WORKSPACE/openssl-install
107+ ./configure CFLAGS="-Wno-error=deprecated-declarations" --with-openssl=$OPENSSL_INSTALL
74108
75109 # Build cjose
76110 make
77111
78112 - name : Run cjose tests
79113 working-directory : cjose
114+ shell : bash
80115 run : |
81- # Set up the environment for wolfProvider
82- source $GITHUB_WORKSPACE/scripts/env-setup
83116 export ${{ matrix.force_fail }}
84117
85118 # Run tests
0 commit comments