ci: add manual build workflow for testing artifacts
Some checks failed
Lint & Test / test (push) Has been cancelled
Some checks failed
Lint & Test / test (push) Has been cancelled
workflow_dispatch-triggered build.yml that produces Windows installer/portable and Linux tarball as CI artifacts without creating a release. Trigger from Gitea UI → Actions → Run.
This commit is contained in:
80
.gitea/workflows/build.yml
Normal file
80
.gitea/workflows/build.yml
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
name: Build Artifacts
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
version:
|
||||||
|
description: 'Version label (e.g. dev, 0.3.0-test)'
|
||||||
|
required: false
|
||||||
|
default: 'dev'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-windows:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Setup Python
|
||||||
|
uses: actions/setup-python@v5
|
||||||
|
with:
|
||||||
|
python-version: '3.11'
|
||||||
|
|
||||||
|
- name: Setup Node.js
|
||||||
|
uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: '20'
|
||||||
|
|
||||||
|
- name: Install system dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y --no-install-recommends zip libportaudio2 nsis msitools
|
||||||
|
|
||||||
|
- name: Cross-build Windows distribution
|
||||||
|
run: |
|
||||||
|
chmod +x build-dist-windows.sh
|
||||||
|
./build-dist-windows.sh "v${{ inputs.version }}"
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: LedGrab-${{ inputs.version }}-win-x64
|
||||||
|
path: |
|
||||||
|
build/LedGrab-*.zip
|
||||||
|
build/LedGrab-*-setup.exe
|
||||||
|
retention-days: 90
|
||||||
|
|
||||||
|
build-linux:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Setup Python
|
||||||
|
uses: actions/setup-python@v5
|
||||||
|
with:
|
||||||
|
python-version: '3.11'
|
||||||
|
|
||||||
|
- name: Setup Node.js
|
||||||
|
uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: '20'
|
||||||
|
|
||||||
|
- name: Install system dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y --no-install-recommends libportaudio2
|
||||||
|
|
||||||
|
- name: Build Linux distribution
|
||||||
|
run: |
|
||||||
|
chmod +x build-dist.sh
|
||||||
|
./build-dist.sh "v${{ inputs.version }}"
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: LedGrab-${{ inputs.version }}-linux-x64
|
||||||
|
path: build/LedGrab-*.tar.gz
|
||||||
|
retention-days: 90
|
||||||
Reference in New Issue
Block a user