mirror of
https://github.com/Radiquum/YAMPD.git
synced 2025-09-05 14:05:40 +05:00
90 lines
2.4 KiB
YAML
90 lines
2.4 KiB
YAML
name: "YAMPD Build"
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: "build"
|
|
cancel-in-progress: true
|
|
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
|
|
jobs:
|
|
build_linux:
|
|
name: "linux-build"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: "[DEPS/Tool] bun"
|
|
uses: oven-sh/setup-bun@v2
|
|
- name: "[DEPS/Tool] python"
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.13.2'
|
|
- name: "[Preparing] cloning repository"
|
|
uses: actions/checkout@v4
|
|
- name: "[DEPS/Build] Backend"
|
|
run: |
|
|
"pip install -r ./requirements.txt"
|
|
"pip install -r ./requirements.dev.txt"
|
|
- name: "[DEPS/Build] Frontend"
|
|
run: "cd ./gui && bun install && cd .."
|
|
- name: "[Build] Building artifact"
|
|
run: "python ./build.py --exe"
|
|
- name: "[Publish] Upload GUI Artifact"
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: "YAMPD-gui"
|
|
path: "./dist/gui"
|
|
if-no-files-found: warn
|
|
retention-days: 14
|
|
- name: "[Publish] Upload CLI Artifact"
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: "YAMPD-cli"
|
|
path: "./dist/cli"
|
|
if-no-files-found: warn
|
|
retention-days: 14
|
|
|
|
build_windows:
|
|
name: "windows-build"
|
|
runs-on: windows-latest
|
|
steps:
|
|
- name: "[DEPS/Tool] bun"
|
|
uses: oven-sh/setup-bun@v2
|
|
- name: "[DEPS/Tool] python"
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.13.2'
|
|
- name: "[Preparing] cloning repository"
|
|
uses: actions/checkout@v4
|
|
- name: "[DEPS/Build] Backend"
|
|
run: |
|
|
"pip install -r ./requirements.txt"
|
|
"pip install -r ./requirements.dev.txt"
|
|
- name: "[DEPS/Build] Frontend"
|
|
run: |
|
|
"cd ./gui"
|
|
"bun install"
|
|
"cd .."
|
|
- name: "[Build] Building artifact"
|
|
run: "python ./build.py --exe"
|
|
- name: "[Publish] Upload GUI Artifact"
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: "YAMPD-gui.exe"
|
|
path: "./dist/gui.exe"
|
|
if-no-files-found: warn
|
|
retention-days: 14
|
|
- name: "[Publish] Upload CLI Artifact"
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: "YAMPD-cli.exe"
|
|
path: "./dist/cli.exe"
|
|
if-no-files-found: warn
|
|
retention-days: 14
|