Reviewed-on: #6 Co-authored-by: Timo Behrendt <t.behrendt@t00n.de> Co-committed-by: Timo Behrendt <t.behrendt@t00n.de>
50 lines
1.3 KiB
YAML
50 lines
1.3 KiB
YAML
name: Build
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
runner:
|
|
type: string
|
|
default: "linux_amd64"
|
|
arch:
|
|
type: string
|
|
default: "amd64"
|
|
|
|
jobs:
|
|
build:
|
|
runs-on:
|
|
- ubuntu-latest
|
|
- ${{ inputs.runner }}
|
|
steps:
|
|
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
|
|
with:
|
|
fetch-depth: 0
|
|
- run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y build-essential cmake zip
|
|
- name: Build
|
|
run: |
|
|
mkdir -p build
|
|
cd build
|
|
cmake ..
|
|
cmake --build .
|
|
- name: Verify binary
|
|
run: |
|
|
test -f build/usbmakroboard && echo "Binary built successfully" || exit 1
|
|
- name: Create zip archive
|
|
run: |
|
|
cd build
|
|
zip usbmakroboard-linux-${{ inputs.arch }}.zip usbmakroboard
|
|
- name: Generate checksum
|
|
run: |
|
|
cd build
|
|
sha256sum usbmakroboard-linux-${{ inputs.arch }}.zip > usbmakroboard-linux-${{ inputs.arch }}.zip.sha256
|
|
- name: Upload artifacts
|
|
uses: ChristopherHX/gitea-upload-artifact@v4
|
|
with:
|
|
name: usbmakroboard-${{ inputs.arch }}
|
|
path: |
|
|
build/usbmakroboard-linux-${{ inputs.arch }}.zip
|
|
build/usbmakroboard-linux-${{ inputs.arch }}.zip.sha256
|
|
retention-days: 1
|