66 lines
1.6 KiB
YAML
66 lines
1.6 KiB
YAML
name: Build Standalone Releases
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
tags:
|
|
- "v*"
|
|
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- os: linux
|
|
runs-on: ubuntu-latest
|
|
shell: bash
|
|
build_cmd: |
|
|
chmod +x build/build_linux.sh build/package_linux.sh
|
|
./build/build_linux.sh
|
|
./build/package_linux.sh
|
|
artifact_glob: release/PDFtoICS-linux-v*.tar.gz
|
|
|
|
- os: macos
|
|
runs-on: macos-latest
|
|
shell: bash
|
|
build_cmd: |
|
|
chmod +x build/build_macos.sh build/package_macos.sh
|
|
./build/build_macos.sh
|
|
./build/package_macos.sh
|
|
artifact_glob: release/PDFtoICS-macos-v*.zip
|
|
|
|
- os: windows
|
|
runs-on: windows-latest
|
|
shell: pwsh
|
|
build_cmd: |
|
|
cmd /c build\build_windows.cmd
|
|
cmd /c build\package_windows.cmd
|
|
artifact_glob: release/PDFtoICS-windows-v*.zip
|
|
|
|
runs-on: ${{ matrix.runs-on }}
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.12"
|
|
|
|
- name: Create venv
|
|
shell: ${{ matrix.shell }}
|
|
run: |
|
|
python -m venv .venv
|
|
|
|
- name: Build + Package
|
|
shell: ${{ matrix.shell }}
|
|
run: ${{ matrix.build_cmd }}
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ matrix.os }}-release
|
|
path: ${{ matrix.artifact_glob }}
|