From 36df1e1ae964d9316f224397de9052f95f49eaf2 Mon Sep 17 00:00:00 2001 From: Juliusz Sosinowicz Date: Thu, 16 Feb 2023 19:35:14 +0100 Subject: [PATCH] Add OSP github action --- .github/workflows/main.yml | 10 +-- .github/workflows/osp-check.yml | 118 ++++++++++++++++++++++++++++++++ 2 files changed, 124 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/osp-check.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8a9b1737a..60d85bb42 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -10,11 +10,13 @@ on: branches: [ '*' ] jobs: - call_docker-Espressif: + docker-Espressif: uses: ./.github/workflows/docker-Espressif.yml - call_multi-compiler: + multi-compiler: uses: ./.github/workflows/multi-compiler.yml - call_docker-OpenWrt: + docker-OpenWrt: uses: ./.github/workflows/docker-OpenWrt.yml - call_os-check: + os-check: uses: ./.github/workflows/os-check.yml + osp: + uses: ./.github/workflows/osp-check.yml diff --git a/.github/workflows/osp-check.yml b/.github/workflows/osp-check.yml new file mode 100644 index 000000000..073eb081d --- /dev/null +++ b/.github/workflows/osp-check.yml @@ -0,0 +1,118 @@ +name: stunnel Tests + +on: + workflow_call: + +jobs: + stunnel_check: + strategy: + matrix: + os: [ ubuntu-latest ] + # List of releases to test + ref: [ 5.67 ] + name: stunnel ${{ matrix.ref }} on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + steps: + - name: Build wolfSSL + uses: wolfSSL/actions-build-autotools-project@v1 + with: + path: wolfssl + configure: --enable-stunnel + install: true + + - name: Checkout OSP + uses: actions/checkout@v3 + with: + repository: wolfssl/osp + path: osp + + - name: Build and test stunnel + uses: wolfSSL/actions-build-autotools-project@v1 + with: + repository: mtrojnar/stunnel + ref: stunnel-${{ matrix.ref }} + path: stunnel + patch-file: $GITHUB_WORKSPACE/osp/stunnel/${{ matrix.ref }}/stunnel-${{ matrix.ref }}.patch + configure: --enable-wolfssl SSLDIR=$GITHUB_WORKSPACE/build-dir + check: true + + - name: Confirm stunnel built with wolfSSL + working-directory: ./stunnel + run: ldd src/stunnel | grep wolfssl + + openvpn_check: + strategy: + matrix: + os: [ ubuntu-latest ] + # List of refs to test + ref: [ master, release/2.6, v2.6.0 ] + name: openvpn ${{ matrix.ref }} on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + steps: + - name: Build wolfSSL + uses: wolfSSL/actions-build-autotools-project@v1 + with: + path: wolfssl + configure: --enable-openvpn + install: true + + - name: Install dependencies + run: sudo apt-get update && sudo apt-get install liblzo2-dev libpam0g-dev liblz4-dev libcap-ng-dev linux-libc-dev man2html libcmocka-dev python3-docutils libtool automake autoconf + + - name: Build and test openvpn + uses: wolfSSL/actions-build-autotools-project@v1 + with: + repository: OpenVPN/openvpn + ref: ${{ matrix.ref }} + path: openvpn + configure: >- + --with-crypto-library=wolfssl + WOLFSSL_CFLAGS="-I$GITHUB_WORKSPACE/build-dir/include/ -I$GITHUB_WORKSPACE/build-dir/include/wolfssl" + WOLFSSL_LIBS="-L$GITHUB_WORKSPACE/build-dir/lib -lwolfssl" + check: true + +# TODO: Currently this test fails. Enable it once it becomes passing. +# haproxy_check: +# strategy: +# matrix: +# os: [ ubuntu-latest ] +# # List of refs to test +# ref: [ master ] +# name: haproxy ${{ matrix.ref }} on ${{ matrix.os }} +# runs-on: ${{ matrix.os }} +# steps: +# - name: Build wolfSSL +# uses: wolfSSL/actions-build-autotools-project@v1 +# with: +# path: wolfssl +# configure: --enable-quic --enable-haproxy +# install: true +# +# - name: Checkout VTest +# uses: actions/checkout@v3 +# with: +# repository: vtest/VTest +# path: VTest +# +# - name: Build VTest +# working-directory: VTest +# # Special flags due to: https://github.com/vtest/VTest/issues/12 +# run: make FLAGS='-O2 -s -Wall' +# +# - name: Checkout HaProxy +# uses: actions/checkout@v3 +# with: +# repository: haproxy/haproxy +# path: haproxy +# +# - name: Build HaProxy +# working-directory: haproxy +# run: >- +# make -j TARGET=linux-glibc DEBUG='-DDEBUG_MEMORY_POOLS -DDEBUG_STRICT' +# USE_OPENSSL_WOLFSSL=1 USE_QUIC=1 SSL_INC=$GITHUB_WORKSPACE/build-dir/include/ +# SSL_LIB=$GITHUB_WORKSPACE/build-dir/lib/ ADDLIB=-Wl,-rpath=$GITHUB_WORKSPACE/build-dir/lib +# +# - name: Test HaProxy +# working-directory: haproxy +# run: make reg-tests reg-tests/ssl VTEST_PROGRAM=$GITHUB_WORKSPACE/VTest/vtest + \ No newline at end of file