ci UPDATE add mbedtls test runs
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 370e0eb..84b6854 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -37,12 +37,26 @@
matrix:
config:
- {
- name: "Release, gcc",
+ name: "Release, gcc, OpenSSL",
os: "ubuntu-22.04",
build-type: "Release",
dep-build-type: "Release",
cc: "gcc",
options: "-DENABLE_TESTS=ON -DENABLE_DNSSEC=ON",
+ tls-lib: "OpenSSL",
+ packages: "",
+ snaps: "",
+ make-prepend: "",
+ make-target: ""
+ }
+ - {
+ name: "Release, gcc, MbedTLS",
+ os: "ubuntu-22.04",
+ build-type: "Release",
+ dep-build-type: "Release",
+ cc: "gcc",
+ options: "-DENABLE_TESTS=ON -DENABLE_DNSSEC=ON",
+ tls-lib: "MbedTLS",
packages: "",
snaps: "",
make-prepend: "",
@@ -55,18 +69,33 @@
dep-build-type: "Release",
cc: "clang",
options: "-DENABLE_TESTS=ON -DENABLE_DNSSEC=ON",
+ tls-lib: "OpenSSL",
packages: "",
snaps: "",
make-prepend: "",
make-target: ""
}
- {
- name: "Debug, gcc",
+ name: "Debug, gcc, OpenSSL",
os: "ubuntu-22.04",
build-type: "Debug",
dep-build-type: "Release",
cc: "gcc",
options: "-DENABLE_DNSSEC=ON",
+ tls-lib: "OpenSSL",
+ packages: "valgrind",
+ snaps: "",
+ make-prepend: "",
+ make-target: ""
+ }
+ - {
+ name: "Debug, gcc, MbedTLS",
+ os: "ubuntu-22.04",
+ build-type: "Debug",
+ dep-build-type: "Release",
+ cc: "gcc",
+ options: "-DENABLE_DNSSEC=ON",
+ tls-lib: "MbedTLS",
packages: "valgrind",
snaps: "",
make-prepend: "",
@@ -79,6 +108,7 @@
dep-build-type: "Release",
cc: "clang",
options: "-DENABLE_DNSSEC=ON",
+ tls-lib: "OpenSSL",
# no valgrind because it does not support DWARF5 yet generated by clang 14
packages: "",
snaps: "",
@@ -92,18 +122,33 @@
dep-build-type: "Release",
cc: "gcc",
options: "-DENABLE_SSH_TLS=OFF",
+ tls-lib: "",
packages: "valgrind",
snaps: "",
make-prepend: "",
make-target: ""
}
- {
- name: "ASAN and UBSAN",
+ name: "ASAN and UBSAN, OpenSSL",
os: "ubuntu-22.04",
build-type: "Debug",
dep-build-type: "Release",
cc: "clang",
options: "-DCMAKE_C_FLAGS=-fsanitize=address,undefined -DENABLE_VALGRIND_TESTS=OFF",
+ tls-lib: "OpenSSL",
+ packages: "",
+ snaps: "",
+ make-prepend: "",
+ make-target: ""
+ }
+ - {
+ name: "ASAN and UBSAN, MbedTLS",
+ os: "ubuntu-22.04",
+ build-type: "Debug",
+ dep-build-type: "Release",
+ cc: "clang",
+ options: "-DCMAKE_C_FLAGS=-fsanitize=address,undefined -DENABLE_VALGRIND_TESTS=OFF",
+ tls-lib: "MbedTLS",
packages: "",
snaps: "",
make-prepend: "",
@@ -116,6 +161,7 @@
dep-build-type: "Debug",
cc: "gcc",
options: "",
+ tls-lib: "OpenSSL",
packages: "abi-dumper abi-compliance-checker snap",
snaps: "core universal-ctags",
make-prepend: "",
@@ -145,7 +191,7 @@
CC=${{ matrix.config.cc }} cmake ..
make
sudo make install
- if: ${{ matrix.config.name == 'Debug, gcc' }}
+ if: ${{ matrix.config.name == 'Debug, gcc, OpenSSL' || matrix.config.name == 'Debug, gcc, MbedTLS' }}
- name: Deps-libyang
shell: bash
@@ -167,6 +213,18 @@
make -j2
sudo make install
+ - name: Deps-MbedTLS
+ shell: bash
+ run: |
+ git clone -b mbedtls-3.5.2 https://github.com/Mbed-TLS/mbedtls.git
+ cd mbedtls
+ mkdir build
+ cd build
+ CC=${{ matrix.config.cc }} cmake -DUSE_SHARED_MBEDTLS_LIBRARY=On -DENABLE_TESTING=Off ..
+ make -j2
+ sudo make install
+ if: ${{ matrix.config.tls-lib == 'MbedTLS' }}
+
- name: Configure
shell: bash
working-directory: ${{ github.workspace }}