Skip to content

Commit 54a0752

Browse files
committed
Update common build
1 parent 884d99c commit 54a0752

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+2098
-1305
lines changed

.github/scripts/pam-pkcs11-test.sh

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,12 @@
11
#!/bin/bash
22
set -euo pipefail
3+
set -x
34

4-
echo "[*] Setting up environment..."
5-
SCRIPT_PATH="$(cd "$(dirname "$0")" && pwd)/$(basename "$0")"
6-
REPO_ROOT=$(git -C "$(dirname "$SCRIPT_PATH")" rev-parse --show-toplevel)
7-
source $REPO_ROOT/scripts/env-setup || true
8-
9-
if [[ -z "${OPENSSL_MODULES:-}" ]]; then
10-
echo "Environment not set up: OPENSSL_MODULES is not defined or empty"
11-
exit 1
12-
elif [[ ! -d "$OPENSSL_MODULES" ]]; then
13-
echo "Could not find wolfProvider at $OPENSSL_MODULES"
14-
echo "Please build it first..."
5+
# Confirm wolfProvider is configured by running openssl list -providers
6+
if openssl list -providers | grep -q libwolfprov; then
7+
echo "wolfProvider is configured"
8+
else
9+
echo "wolfProvider is not configured"
1510
exit 1
1611
fi
1712

.github/workflows/asan.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ name: Asan Test
44
on:
55
push:
66
branches: [ "*" ]
7-
#pull_request:
8-
#branches: [ "*" ]
7+
pull_request:
8+
branches: [ "*" ]
99

1010
concurrency:
1111
group: ${{ github.workflow }}-${{ github.ref }}

.github/workflows/bind9.yml

Lines changed: 50 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ name: Bind9 Tests
44
on:
55
push:
66
branches: [ 'master', 'main', 'release/**' ]
7-
#pull_request:
8-
#branches: [ '*' ]
7+
pull_request:
8+
branches: [ '*' ]
99

1010
concurrency:
1111
group: ${{ github.workflow }}-${{ github.ref }}
@@ -18,52 +18,78 @@ jobs:
1818
with:
1919
wolfssl_ref: ${{ matrix.wolfssl_ref }}
2020
openssl_ref: ${{ matrix.openssl_ref }}
21+
replace_default: ${{ matrix.replace_default }}
2122
strategy:
2223
matrix:
23-
wolfssl_ref: [ 'master', 'v5.8.0-stable' ]
24-
openssl_ref: [ 'openssl-3.5.0' ]
24+
wolfssl_ref: [ 'v5.8.2-stable' ]
25+
openssl_ref: [ 'openssl-3.5.2' ]
26+
replace_default: [ true ]
2527

2628
test_bind:
2729
runs-on: ubuntu-22.04
30+
container:
31+
image: debian:bookworm
32+
env:
33+
DEBIAN_FRONTEND: noninteractive
2834
needs: build_wolfprovider
2935
# This should be a safe limit for the tests to run.
3036
timeout-minutes: 20
3137
strategy:
3238
fail-fast: false
3339
matrix:
3440
bind_ref: [ 'v9.18.28' ]
35-
wolfssl_ref: [ 'master', 'v5.8.0-stable' ]
36-
openssl_ref: [ 'openssl-3.5.0' ]
41+
wolfssl_ref: [ 'v5.8.2-stable' ]
42+
openssl_ref: [ 'openssl-3.5.2' ]
43+
replace_default: [ true ]
3744
force_fail: ['WOLFPROV_FORCE_FAIL=1', '']
45+
env:
46+
WOLFSSL_PACKAGES_PATH: /tmp/wolfssl-packages
47+
OPENSSL_PACKAGES_PATH: /tmp/openssl-packages
48+
WOLFPROV_PACKAGES_PATH: /tmp/wolfprov-packages
3849
steps:
3950
- name: Checkout wolfProvider
4051
uses: actions/checkout@v4
4152
with:
4253
fetch-depth: 1
4354

44-
- name: Retrieving wolfSSL/wolfProvider from cache
55+
- name: Checking OpenSSL/wolfProvider packages in cache
4556
uses: actions/cache/restore@v4
4657
id: wolfprov-cache
4758
with:
4859
path: |
49-
wolfssl-install
50-
wolfprov-install
51-
openssl-install/lib64
52-
openssl-install/include
53-
openssl-install/bin
54-
55-
key: wolfprov-${{ matrix.wolfssl_ref }}-${{ matrix.openssl_ref }}-${{ github.sha }}
60+
${{ env.WOLFSSL_PACKAGES_PATH }}
61+
${{ env.OPENSSL_PACKAGES_PATH }}
62+
${{ env.WOLFPROV_PACKAGES_PATH }}
63+
key: openssl-wolfprov-debian-packages-${{ github.sha }}${{ matrix.replace_default && '-replace-default' || '' }}
5664
fail-on-cache-miss: true
5765

66+
- name: Install wolfSSL/OpenSSL/wolfprov packages
67+
run: |
68+
printf "Installing OpenSSL/wolfProvider packages:\n"
69+
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
70+
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
71+
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
72+
73+
apt install --reinstall -y \
74+
${{ env.WOLFSSL_PACKAGES_PATH }}/libwolfssl_*.deb
75+
76+
apt install --reinstall -y \
77+
${{ env.OPENSSL_PACKAGES_PATH }}/openssl_*.deb \
78+
${{ env.OPENSSL_PACKAGES_PATH }}/libssl3_*.deb \
79+
${{ env.OPENSSL_PACKAGES_PATH }}/libssl-dev_*.deb
80+
81+
apt install --reinstall -y \
82+
${{ env.WOLFPROV_PACKAGES_PATH }}/libwolfprov_*.deb
83+
5884
- name: Install bind9 test dependencies
5985
run: |
60-
export DEBIAN_FRONTEND=noninteractive
61-
sudo apt-get update
62-
sudo apt install -y build-essential automake libtool gnutls-bin \
63-
pkg-config make libidn2-dev libuv1-dev libnghttp2-dev libcap-dev \
64-
libjemalloc-dev zlib1g-dev libxml2-dev libjson-c-dev libcmocka-dev \
65-
python3-pytest python3-dnspython python3-hypothesis
66-
sudo PERL_MM_USE_DEFAULT=1 cpan -i Net::DNS
86+
apt-get update
87+
apt install -y build-essential automake libtool gnutls-bin \
88+
pkg-config make libidn2-dev libuv1-dev libnghttp2-dev libcap-dev \
89+
libjemalloc-dev zlib1g-dev libxml2-dev libjson-c-dev libcmocka-dev \
90+
python3-pytest python3-dnspython python3-hypothesis patch iproute2 \
91+
net-tools
92+
PERL_MM_USE_DEFAULT=1 cpan -i Net::DNS
6793
6894
- name: Checkout bind9
6995
uses: actions/checkout@v4
@@ -85,15 +111,14 @@ jobs:
85111
86112
- name: Build and test bind9 with wolfProvider
87113
working-directory: bind9
114+
shell: bash
88115
run: |
89-
# Set up the environment for wolfProvider
90-
source $GITHUB_WORKSPACE/scripts/env-setup
91-
116+
set +o pipefail # ignore errors from make check
92117
autoreconf -ivf
93118
./configure
94119
make clean
95120
make -j$(nproc)
96-
sudo ./bin/tests/system/ifconfig.sh up
121+
./bin/tests/system/ifconfig.sh up
97122
98123
export ${{ matrix.force_fail }}
99124
make -j$(nproc) check 2>&1 | tee bind9-test.log

0 commit comments

Comments
 (0)