Skip to content

Commit 953a558

Browse files
author
Test User
committed
Add build debian locally
1 parent 8145ead commit 953a558

File tree

3 files changed

+61
-10
lines changed

3 files changed

+61
-10
lines changed

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,4 +54,5 @@ jobs:
5454
openssl_ref: ${{ github.event.inputs.openssl_ref || 'openssl-3.5.2' }}
5555
fips_ref: ${{ matrix.fips_ref }}
5656
replace_default: ${{ github.event.inputs.replace_default != 'false' }}
57+
use_cached_packages: false # Nightly builds trigger Jenkins to build fresh packages
5758
secrets: inherit

.github/workflows/build-wolfprovider.yml

Lines changed: 58 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ on:
1616
required: false
1717
type: boolean
1818
default: false
19+
use_cached_packages:
20+
required: false
21+
type: boolean
22+
default: true
1923

2024
jobs:
2125
build_wolfprovider:
@@ -64,9 +68,9 @@ jobs:
6468
jq
6569
6670
# Trigger Jenkins to build all packages (wolfSSL, OpenSSL, wolfProvider)
67-
# Skip for pull_request events as they don't have access to secrets
71+
# Only runs when use_cached_packages is false (nightly builds)
6872
- name: Trigger Jenkins build
69-
if: github.event_name != 'pull_request'
73+
if: inputs.use_cached_packages == false
7074
id: trigger
7175
shell: bash
7276
run: |
@@ -194,7 +198,7 @@ jobs:
194198
done
195199
196200
- name: Download all packages from Jenkins
197-
if: github.event_name != 'pull_request'
201+
if: inputs.use_cached_packages == false
198202
shell: bash
199203
run: |
200204
echo "Downloading packages from Jenkins build..."
@@ -242,7 +246,7 @@ jobs:
242246
ls -lh ./downloaded-packages/
243247
244248
- name: Setup wolfSSL packages from Jenkins
245-
if: github.event_name != 'pull_request'
249+
if: inputs.use_cached_packages == false
246250
run: |
247251
mkdir -p ${{ env.WOLFSSL_PACKAGES_PATH }}
248252
@@ -283,14 +287,59 @@ jobs:
283287
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
284288
285289
- name: Install wolfSSL packages from Jenkins
286-
if: github.event_name != 'pull_request'
290+
if: inputs.use_cached_packages == false
287291
run: |
288292
echo "Installing wolfSSL packages (${{ inputs.fips_ref }})..."
289293
dpkg -i ${{ env.WOLFSSL_PACKAGES_PATH }}/*.deb || true
290294
apt-get install -f -y
291295
echo "wolfSSL packages installed successfully:"
292296
dpkg -l | grep wolfssl
293297
298+
# Download pre-built wolfSSL packages from nightly workflow artifacts
299+
- name: Download wolfSSL packages from nightly build artifacts
300+
if: inputs.use_cached_packages == true
301+
uses: dawidd6/action-download-artifact@v6
302+
with:
303+
github_token: ${{ secrets.GITHUB_TOKEN }}
304+
workflow: build-wolfprovider-nightly.yml
305+
branch: ${{ github.ref_name }}
306+
name: debian-packages-${{ inputs.fips_ref }}${{ inputs.replace_default && '-replace-default' || '' }}-${{ inputs.wolfssl_ref }}-${{ inputs.openssl_ref }}
307+
path: /tmp/nightly-packages
308+
309+
- name: Setup wolfSSL packages from nightly artifacts
310+
if: inputs.use_cached_packages == true
311+
run: |
312+
# Move wolfSSL packages to expected directory
313+
mkdir -p ${{ env.WOLFSSL_PACKAGES_PATH }}
314+
315+
# Check if packages exist in structured format (with subdirectories)
316+
if [ -d "/tmp/nightly-packages/wolfssl-packages" ]; then
317+
echo "Found wolfSSL packages in subdirectory"
318+
mv /tmp/nightly-packages/wolfssl-packages/* ${{ env.WOLFSSL_PACKAGES_PATH }}/
319+
elif [ -d "/tmp/nightly-packages" ]; then
320+
echo "Found wolfSSL packages in flat directory"
321+
# Move only wolfSSL packages based on naming pattern
322+
mv /tmp/nightly-packages/libwolfssl* ${{ env.WOLFSSL_PACKAGES_PATH }}/ 2>/dev/null || true
323+
fi
324+
325+
echo "wolfSSL packages from nightly build:"
326+
ls -la ${{ env.WOLFSSL_PACKAGES_PATH }}
327+
328+
- name: Install wolfSSL packages from nightly artifacts
329+
if: inputs.use_cached_packages == true
330+
run: |
331+
echo "Installing wolfSSL packages from nightly build (${{ inputs.fips_ref }})..."
332+
333+
if [ -n "$(ls -A ${{ env.WOLFSSL_PACKAGES_PATH }}/*.deb 2>/dev/null)" ]; then
334+
dpkg -i ${{ env.WOLFSSL_PACKAGES_PATH }}/*.deb || true
335+
apt-get install -f -y
336+
echo "wolfSSL packages installed successfully:"
337+
dpkg -l | grep wolfssl
338+
else
339+
echo "ERROR: No wolfSSL packages found!"
340+
exit 1
341+
fi
342+
294343
- name: Checkout wolfProvider
295344
uses: actions/checkout@v4
296345
with:
@@ -315,14 +364,14 @@ jobs:
315364
${{ inputs.replace_default && '--replace-default' || '' }}
316365
317366
- name: Organize packages into directories
318-
if: github.event_name != 'pull_request'
367+
if: inputs.use_cached_packages == false
319368
run: |
320369
# Create package directories
321370
mkdir -p ${{ env.WOLFSSL_PACKAGES_PATH }}
322371
mkdir -p ${{ env.OPENSSL_PACKAGES_PATH }}
323372
mkdir -p ${{ env.WOLFPROV_PACKAGES_PATH }}
324373
325-
echo "Organizing packages..."
374+
echo "Organizing packages from Jenkins build..."
326375
# Copy wolfSSL packages (libwolfssl*)
327376
cp ./downloaded-packages/libwolfssl* ${{ env.WOLFSSL_PACKAGES_PATH }}/ 2>/dev/null || echo "No wolfSSL packages found"
328377
@@ -341,9 +390,9 @@ jobs:
341390
echo "wolfProvider packages:"
342391
ls -lh ${{ env.WOLFPROV_PACKAGES_PATH }} 2>/dev/null || echo " (none)"
343392
344-
# Save all packages as artifacts for consumers
393+
# Save all packages as artifacts for consumers (only for Jenkins builds/nightly)
345394
- name: Upload all packages (wolfSSL, OpenSSL, wolfProvider)
346-
if: github.event_name != 'pull_request'
395+
if: inputs.use_cached_packages == false
347396
uses: actions/upload-artifact@v4
348397
with:
349398
name: debian-packages-${{ inputs.fips_ref }}${{ inputs.replace_default && '-replace-default' || '' }}-${{ inputs.wolfssl_ref }}-${{ inputs.openssl_ref }}

.github/workflows/cjose.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,15 @@ jobs:
2020
openssl_ref: ${{ matrix.openssl_ref }}
2121
fips_ref: ${{ matrix.fips_ref }}
2222
replace_default: ${{ matrix.replace_default }}
23+
use_cached_packages: ${{ matrix.use_cached_packages }}
2324
secrets: inherit
2425
strategy:
2526
matrix:
2627
wolfssl_ref: [ 'v5.8.2-stable' ]
2728
openssl_ref: [ 'openssl-3.5.2' ]
2829
fips_ref: [ 'FIPS', 'non-FIPS' ]
2930
replace_default: [ true ]
31+
use_cached_packages: [ false ]
3032

3133
test_cjose:
3234
runs-on: ubuntu-22.04
@@ -44,7 +46,6 @@ jobs:
4446
fips_ref: [ 'FIPS', 'non-FIPS' ]
4547
replace_default: [ true ]
4648
force_fail: [ 'WOLFPROV_FORCE_FAIL=1', '' ]
47-
4849
env:
4950
WOLFSSL_PACKAGES_PATH: /tmp/wolfssl-packages
5051
OPENSSL_PACKAGES_PATH: /tmp/openssl-packages

0 commit comments

Comments
 (0)