Skip to content

Build Bouncy Hsm

Build Bouncy Hsm #40

Workflow file for this run

name: Build Bouncy Hsm Experimental
on:
workflow_dispatch
jobs:
Build-linux-libs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build PKCS11 lib x64
run: |
cd build_linux
make build64
rm -f *.o
# - name: Instal 32bit tooling
# run: |
# apt-get update -qq
# apt-get install gcc-multilib -q -y
# - name: Build PKCS11 lib x32
# run: |
# cd build_linux
# make build32
# rm -f *.o
- name: Upload linux native artifacts
uses: actions/upload-artifact@v4
with:
name: linux-native-libs
path: |
build_linux/*.so
retention-days: 1
Build-rehl-libs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Cache Docker layers
uses: actions/cache@v4
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ github.sha }}
restore-keys: |
${{ runner.os }}-buildx-
- name: Build Docker image
run: |
docker build --file Dockerfile --tag c-project:latest .
- name: Run Docker container and compile project
run: |
docker run --rm -v ${{ github.workspace }}:/workspace -w /workspace/build_linux c-project:latest make
- name: Rename so file for REHL distribution
run: |
mv -f build_linux/BouncyHsm.Pkcs11Lib-x64.so build_linux/BouncyHsm.Pkcs11Lib-x64-rehl.so
- name: Archive build artifacts
uses: actions/upload-artifact@v4
with:
name: build-artifacts
path: |
build_linux/*.so
retention-days: 1
Build-Bouncy-Hsm:
name: Build-Bouncy-Hsm
runs-on: windows-latest
needs:
- Build-linux-libs
- Build-rehl-libs
steps:
- uses: actions/checkout@v4
- name: Cache .nuke/temp, ~/.nuget/packages
uses: actions/cache@v4
with:
path: |
.nuke/temp
~/.nuget/packages
key: ${{ runner.os }}-${{ hashFiles('**/global.json', '**/*.csproj') }}
- uses: actions/download-artifact@v4
with:
name: linux-native-libs
path: build_linux
- name: Run './build.cmd BuildAll'
run: ./build.cmd BuildAll --configuration Release
- uses: actions/upload-artifact@v4
with:
name: Bouncy-Hsm-Artifacts
path: |
artifacts/*.zip
artifacts/*.nupkg