mirror of
https://github.com/PR0M3TH3AN/VoxVera.git
synced 2026-11-02 20:50:40 +00:00
- Fix PyInstaller --add-data separator for Windows in binaries.yml - Use --appimage-extract-and-run in AppImage build for FUSE-less CI environments - Lowercase repository owner for Docker image tags in release.yml - Clean up redundant pip installations and dependencies in e2e.yml and Dockerfile
59 lines
1.6 KiB
YAML
59 lines
1.6 KiB
YAML
name: Build Standalone Binaries
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
name: Build for ${{ matrix.os }}
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
include:
|
|
- os: ubuntu-latest
|
|
artifact_name: voxvera-linux
|
|
asset_name: voxvera-linux
|
|
- os: windows-latest
|
|
artifact_name: voxvera-windows.exe
|
|
asset_name: voxvera-windows.exe
|
|
- os: macos-latest
|
|
artifact_name: voxvera-macos
|
|
asset_name: voxvera-macos
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.12'
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
pip install -r requirements.txt
|
|
pip install pyinstaller
|
|
|
|
- name: Build with PyInstaller
|
|
shell: bash
|
|
run: |
|
|
if [ "$RUNNER_OS" == "Windows" ]; then SEP=";"; else SEP=":"; fi
|
|
pyinstaller --onefile \
|
|
--add-data "voxvera/locales${SEP}voxvera/locales" \
|
|
--add-data "voxvera/src${SEP}voxvera/src" \
|
|
--add-data "voxvera/templates${SEP}voxvera/templates" \
|
|
--add-data "voxvera/resources${SEP}voxvera/resources" \
|
|
--add-data "requirements.txt${SEP}." \
|
|
--name "${{ matrix.artifact_name }}" \
|
|
voxvera/cli.py
|
|
|
|
- name: Upload artifacts
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ matrix.asset_name }}
|
|
path: dist/${{ matrix.artifact_name }}
|