Files
Timo Behrendt 4854d8ef68 ci: pin various actions to a proper semver version (#18)
Reviewed-on: #18
Co-authored-by: Timo Behrendt <t.behrendt@t00n.de>
Co-committed-by: Timo Behrendt <t.behrendt@t00n.de>
2026-02-14 19:30:47 +01:00

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@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
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