Skip to content

Commit 58e4857

Browse files
author
Test User
committed
Add pr 309 in preemtivley
1 parent 4fdd8ca commit 58e4857

38 files changed

+823
-575
lines changed

.github/workflows/bind9.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,12 @@ jobs:
2020
openssl_ref: ${{ matrix.openssl_ref }}
2121
fips_ref: ${{ matrix.fips_ref }}
2222
replace_default: ${{ matrix.replace_default }}
23-
build_packages: ${{ matrix.build_packages }}
24-
secrets: inherit
2523
strategy:
2624
matrix:
2725
wolfssl_ref: [ 'v5.8.2-stable' ]
2826
openssl_ref: [ 'openssl-3.5.2' ]
2927
fips_ref: [ 'FIPS', 'non-FIPS' ]
3028
replace_default: [ true ]
31-
build_packages: [ false ]
3229

3330
test_bind:
3431
runs-on: ubuntu-22.04

.github/workflows/build-wolfprovider-nightly.yml

Lines changed: 0 additions & 70 deletions
This file was deleted.

.github/workflows/build-wolfprovider.yml

Lines changed: 110 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,6 @@ on:
1616
required: false
1717
type: boolean
1818
default: false
19-
build_packages:
20-
required: false
21-
type: boolean
22-
default: false
2319

2420
jobs:
2521
build_wolfprovider:
@@ -38,29 +34,103 @@ jobs:
3834
steps:
3935
# Install git prior to cloning to ensure we have the full repo
4036
# TODO: create a docker with these pre-installed
41-
- name: Install common dependencies
37+
- name: Install build dependencies
4238
run: |
4339
apt-get update && apt-get install -y --no-install-recommends \
40+
git \
4441
build-essential \
45-
devscripts \
4642
debhelper \
43+
devscripts \
44+
dpkg-dev \
45+
dh-exec \
4746
dh-autoreconf \
48-
libtool \
4947
pkg-config \
50-
git \
51-
wget \
52-
curl \
48+
autoconf \
49+
automake \
5350
ca-certificates \
5451
openssl \
55-
dpkg-dev \
56-
lintian \
57-
fakeroot \
58-
dh-exec \
59-
equivs \
60-
expect \
61-
xxd \
62-
bc \
63-
libdistro-info-perl
52+
libtool
53+
54+
# Download pre-built packages from debs branch
55+
- name: Checkout debs branch
56+
uses: actions/checkout@v4
57+
with:
58+
repository: wolfSSL/wolfProvider
59+
ref: debs
60+
sparse-checkout: |
61+
fips
62+
nonfips
63+
openssl
64+
sparse-checkout-cone-mode: false
65+
path: debs
66+
67+
- name: Setup packages from debs branch
68+
run: |
69+
mkdir -p ${{ env.WOLFSSL_PACKAGES_PATH }}
70+
mkdir -p ${{ env.OPENSSL_PACKAGES_PATH }}
71+
72+
echo "Available packages in debs branch:"
73+
ls -la debs/
74+
75+
# Copy packages based on build type
76+
if [ "${{ inputs.fips_ref }}" = "FIPS" ]; then
77+
if [ -d "debs/fips" ] && [ "$(ls -A debs/fips/*.deb 2>/dev/null)" ]; then
78+
echo "Copying FIPS wolfSSL packages..."
79+
cp debs/fips/*.deb ${{ env.WOLFSSL_PACKAGES_PATH }}/
80+
else
81+
echo "ERROR: No FIPS packages found in debs branch"
82+
exit 1
83+
fi
84+
else
85+
if [ -d "debs/nonfips" ] && [ "$(ls -A debs/nonfips/*.deb 2>/dev/null)" ]; then
86+
echo "Copying non-FIPS wolfSSL packages..."
87+
cp debs/nonfips/*.deb ${{ env.WOLFSSL_PACKAGES_PATH }}/
88+
else
89+
echo "ERROR: No non-FIPS packages found in debs branch"
90+
exit 1
91+
fi
92+
fi
93+
# Copy OpenSSL packages
94+
if [ -d "debs/openssl" ] && [ "$(ls -A debs/openssl/*.deb 2>/dev/null)" ]; then
95+
echo "Copying OpenSSL packages..."
96+
cp debs/openssl/*.deb ${{ env.OPENSSL_PACKAGES_PATH }}/
97+
else
98+
echo "WARNING: No OpenSSL packages found in debs branch"
99+
fi
100+
101+
echo ""
102+
echo "Packages ready for installation:"
103+
echo "wolfSSL packages:"
104+
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
105+
echo ""
106+
echo "OpenSSL packages:"
107+
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
108+
109+
- name: Install OpenSSL and wolfSSL packages
110+
run: |
111+
echo "Installing OpenSSL and wolfSSL packages (${{ inputs.fips_ref }})..."
112+
113+
# Install OpenSSL packages first
114+
if [ -n "$(ls -A ${{ env.OPENSSL_PACKAGES_PATH }}/*.deb 2>/dev/null)" ]; then
115+
echo "Installing OpenSSL packages..."
116+
dpkg -i ${{ env.OPENSSL_PACKAGES_PATH }}/*.deb || true
117+
fi
118+
# Install wolfSSL packages
119+
if [ -n "$(ls -A ${{ env.WOLFSSL_PACKAGES_PATH }}/*.deb 2>/dev/null)" ]; then
120+
echo "Installing wolfSSL packages..."
121+
dpkg -i ${{ env.WOLFSSL_PACKAGES_PATH }}/*.deb || true
122+
fi
123+
124+
# Fix any dependency issues
125+
apt-get install -f -y
126+
127+
echo ""
128+
echo "Packages installed successfully:"
129+
echo "OpenSSL:"
130+
dpkg -l | grep openssl || echo " No OpenSSL packages found"
131+
echo ""
132+
echo "wolfSSL:"
133+
dpkg -l | grep wolfssl || echo " No wolfSSL packages found"
64134
65135
- name: Checkout wolfProvider
66136
uses: actions/checkout@v4
@@ -79,22 +149,33 @@ jobs:
79149
git remote add upstream https://github.com/wolfSSL/wolfProvider.git || true
80150
git fetch upstream --tags --no-recurse-submodules
81151
82-
- name: Install wolfSSL
152+
- name: Build wolfProvider
83153
run: |
84-
$GITHUB_WORKSPACE/debian/install-wolfssl.sh --tag ${{ inputs.wolfssl_ref }} ${{ env.WOLFSSL_PACKAGES_PATH }}
154+
echo "Building ${{ inputs.fips_ref }} wolfProvider..."
155+
WOLFSSL_TAG=${{ inputs.wolfssl_ref }} OPENSSL_TAG=${{ inputs.openssl_ref }} \
156+
yes "Y" | $GITHUB_WORKSPACE/scripts/build-wolfprovider.sh --debian \
157+
${{ inputs.fips_ref == 'FIPS' && '--enable-fips' || '' }} \
158+
${{ inputs.replace_default && '--replace-default' || '' }}
85159
86-
- name: Install OpenSSL
160+
- name: Setup packages directory
87161
run: |
88-
$GITHUB_WORKSPACE/debian/install-openssl.sh ${{ inputs.replace_default && '--replace-default' || '' }} ${{ env.OPENSSL_PACKAGES_PATH }}
162+
mkdir -p ${{ env.WOLFPROV_PACKAGES_PATH }}
163+
164+
# Copy wolfProvider packages (built in previous step)
165+
cp $GITHUB_WORKSPACE/../libwolfprov*.deb ${{ env.WOLFPROV_PACKAGES_PATH }}
166+
cp $GITHUB_WORKSPACE/../libwolfprov*.dsc ${{ env.WOLFPROV_PACKAGES_PATH }}
167+
cp $GITHUB_WORKSPACE/../libwolfprov*.tar.gz ${{ env.WOLFPROV_PACKAGES_PATH }}
89168
90-
- name: Install wolfProvider
91-
run: |
92-
$GITHUB_WORKSPACE/debian/install-wolfprov.sh ${{ env.WOLFPROV_PACKAGES_PATH }}
93-
94-
- name: List packages directories
95-
run: |
169+
# Note: OpenSSL and wolfSSL packages already copied from debs branch earlier
170+
171+
printf "Listing packages directory:\n"
172+
echo "wolfProvider packages:"
96173
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
174+
echo ""
175+
echo "wolfSSL packages:"
97176
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
177+
echo ""
178+
echo "OpenSSL packages:"
98179
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
99180
100181
# Save all packages as artifacts for consumers

.github/workflows/cjose.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,12 @@ jobs:
2020
openssl_ref: ${{ matrix.openssl_ref }}
2121
fips_ref: ${{ matrix.fips_ref }}
2222
replace_default: ${{ matrix.replace_default }}
23-
build_packages: ${{ matrix.build_packages }}
24-
secrets: inherit
2523
strategy:
2624
matrix:
2725
wolfssl_ref: [ 'v5.8.2-stable' ]
2826
openssl_ref: [ 'openssl-3.5.2' ]
2927
fips_ref: [ 'FIPS', 'non-FIPS' ]
3028
replace_default: [ true ]
31-
build_packages: [ false ]
3229

3330
test_cjose:
3431
runs-on: ubuntu-22.04

.github/workflows/curl.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,12 @@ jobs:
2020
openssl_ref: ${{ matrix.openssl_ref }}
2121
fips_ref: ${{ matrix.fips_ref }}
2222
replace_default: ${{ matrix.replace_default }}
23-
build_packages: ${{ matrix.build_packages }}
24-
secrets: inherit
2523
strategy:
2624
matrix:
2725
wolfssl_ref: [ 'v5.8.2-stable' ]
2826
openssl_ref: [ 'openssl-3.5.2' ]
2927
fips_ref: [ 'FIPS', 'non-FIPS' ]
3028
replace_default: [ true ]
31-
build_packages: [ false ]
3229

3330
test_curl:
3431
runs-on: ubuntu-22.04

.github/workflows/grpc.yml

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: gRPC Tests
33
# START OF COMMON SECTION
44
on:
55
push:
6-
branches: [ 'master', 'main', 'release/**' ]
6+
branches: [ 'master', 'main', 'build-wolfprov-debian2', 'release/**' ]
77
pull_request:
88
branches: [ '*' ]
99

@@ -18,21 +18,22 @@ jobs:
1818
with:
1919
wolfssl_ref: ${{ matrix.wolfssl_ref }}
2020
openssl_ref: ${{ matrix.openssl_ref }}
21+
fips_ref: ${{ matrix.fips_ref }}
2122
replace_default: ${{ matrix.replace_default }}
2223
strategy:
2324
matrix:
2425
wolfssl_ref: [ 'v5.8.2-stable' ]
2526
openssl_ref: [ 'openssl-3.5.2' ]
27+
fips_ref: [ 'FIPS', 'non-FIPS' ]
2628
replace_default: [ true ]
27-
fips: [ false ]
2829

2930
test_grpc:
3031
runs-on: ubuntu-22.04
32+
needs: build_wolfprovider
3133
container:
3234
image: debian:bookworm
3335
env:
3436
DEBIAN_FRONTEND: noninteractive
35-
needs: build_wolfprovider
3637
# This should be a safe limit for the tests to run.
3738
timeout-minutes: 30
3839
strategy:
@@ -48,8 +49,8 @@ jobs:
4849
h2_ssl_cert_test h2_ssl_session_reuse_test
4950
wolfssl_ref: [ 'v5.8.2-stable' ]
5051
openssl_ref: [ 'openssl-3.5.2' ]
52+
fips_ref: [ 'FIPS', 'non-FIPS' ]
5153
replace_default: [ true ]
52-
fips: [ false ]
5354
env:
5455
WOLFSSL_PACKAGES_PATH: /tmp/wolfssl-packages
5556
OPENSSL_PACKAGES_PATH: /tmp/openssl-packages
@@ -60,20 +61,21 @@ jobs:
6061
with:
6162
fetch-depth: 1
6263

63-
- name: Checking OpenSSL/wolfProvider packages in cache
64-
uses: actions/cache/restore@v4
65-
id: wolfprov-cache
64+
- name: Download packages from build job
65+
uses: actions/download-artifact@v4
6666
with:
67-
path: |
68-
${{ env.WOLFSSL_PACKAGES_PATH }}
69-
${{ env.OPENSSL_PACKAGES_PATH }}
70-
${{ env.WOLFPROV_PACKAGES_PATH }}
71-
key: openssl-wolfprov-debian-packages-${{ github.sha }}${{ matrix.replace_default && '-replace-default' || '' }}
72-
fail-on-cache-miss: true
67+
name: debian-packages-${{ matrix.fips_ref }}${{ matrix.replace_default && '-replace-default' || '' }}-${{ matrix.wolfssl_ref }}-${{ matrix.openssl_ref }}
68+
path: /tmp/packages
69+
70+
- name: Setup package directories
71+
run: |
72+
mv /tmp/packages/wolfssl-packages ${{ env.WOLFSSL_PACKAGES_PATH }}
73+
mv /tmp/packages/openssl-packages ${{ env.OPENSSL_PACKAGES_PATH }}
74+
mv /tmp/packages/wolfprov-packages ${{ env.WOLFPROV_PACKAGES_PATH }}
7375
7476
- name: Install wolfSSL/OpenSSL/wolfprov packages
7577
run: |
76-
printf "Installing OpenSSL/wolfProvider packages:\n"
78+
printf "Installing OpenSSL/wolfProvider packages (${{ matrix.fips_ref }}):\n"
7779
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
7880
ls -la ${{ env.OPENSSL_PACKAGES_PATH }}
7981
ls -la ${{ env.WOLFPROV_PACKAGES_PATH }}
@@ -91,7 +93,9 @@ jobs:
9193
9294
- name: Verify wolfProvider is properly installed
9395
run: |
94-
$GITHUB_WORKSPACE/scripts/verify-install.sh ${{ matrix.replace_default && '--replace-default' || '' }} ${{ matrix.fips && '--fips' || '' }}
96+
$GITHUB_WORKSPACE/scripts/verify-install.sh \
97+
${{ matrix.replace_default && '--replace-default' || '' }} \
98+
${{ matrix.fips_ref == 'FIPS' && '--fips' || '' }}
9599
96100
- name: Install prerequisites
97101
run: |

0 commit comments

Comments
 (0)