[Openvpn-devel] Add mbedtls3 GHA build

Message ID 20231030171315.68933-1-frank@lichtenheld.com
State Accepted
Headers show
Series [Openvpn-devel] Add mbedtls3 GHA build | expand

Commit Message

Frank Lichtenheld Oct. 30, 2023, 5:13 p.m. UTC
Change-Id: I9edb3e336bb9efe6f555fa6b323a4a0a944f683d
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
---
 .github/workflows/build.yaml | 51 ++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

Comments

Gert Doering Oct. 31, 2023, 6:27 a.m. UTC | #1
Acked-by: Gert Doering <gert@greenie.muc.de>

Looks reasonable and succeeds in my GH test repo.

Your patch has been applied to the master branch.

commit 5af57e348ed3a5f451aca1bba5ba57b3a34e5d11
Author: Frank Lichtenheld
Date:   Mon Oct 30 18:13:15 2023 +0100

     Add mbedtls3 GHA build

     Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
     Acked-by: Gert Doering <gert@greenie.muc.de>
     Message-Id: <20231030171315.68933-1-frank@lichtenheld.com>
     URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg27314.html
     Signed-off-by: Gert Doering <gert@greenie.muc.de>


--
kind regards,

Gert Doering

Patch

diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 60d3da5e..cd72f3db 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -360,3 +360,54 @@  jobs:
         run: make -j3
       - name: make check
         run: make check
+
+  mbedtls3:
+    strategy:
+      fail-fast: false
+      matrix:
+        os: [ubuntu-22.04]
+        ssllib: [mbedtls3]
+        build: [ normal, asan ]
+        include:
+          - build: asan
+            cflags: "-fsanitize=address -fno-sanitize-recover=all  -fno-optimize-sibling-calls -fsanitize-address-use-after-scope -fno-omit-frame-pointer -g -O1"
+            ldflags: -fsanitize=address -fno-sanitize-recover=all
+            cc: clang
+          - build: normal
+            cflags: "-O2 -g"
+            ldflags: ""
+            cc: gcc
+
+    name: "${{matrix.cc}} ${{matrix.build}} - ${{matrix.os}} - ${{matrix.ssllib}}"
+    runs-on: ${{matrix.os}}
+    env:
+      CFLAGS: ${{ matrix.cflags }}
+      LDFLAGS: ${{ matrix.ldflags }}
+      CC: ${{matrix.cc}}
+      UBSAN_OPTIONS: print_stacktrace=1
+
+    steps:
+      - name: Install dependencies
+        run: sudo apt update && sudo apt install -y liblzo2-dev libpam0g-dev liblz4-dev linux-libc-dev man2html clang libcmocka-dev python3-docutils python3-jinja2 python3-jsonschema libtool automake autoconf pkg-config libcap-ng-dev libnl-genl-3-dev
+      - name: "mbedtls: checkout"
+        uses: actions/checkout@v3
+        with:
+          path: mbedtls
+          repository: Mbed-TLS/mbedtls
+          ref: v3.5.0
+      - name: "mbedtls: make no_test"
+        run: make -j3 no_test SHARED=1
+        working-directory: mbedtls
+      - name: "mbedtls: make install"
+        run: sudo make install DESTDIR=/usr
+        working-directory: mbedtls
+      - name: Checkout OpenVPN
+        uses: actions/checkout@v3
+      - name: autoconf
+        run: autoreconf -fvi
+      - name: configure
+        run: ./configure --with-crypto-library=mbedtls
+      - name: make all
+        run: make -j3
+      - name: make check
+        run: make check