mirror of
https://github.com/kennethreitz/kjvstudy.org.git
synced 2026-06-05 23:00:16 +00:00
63 lines
2.0 KiB
YAML
63 lines
2.0 KiB
YAML
name: Tauri Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
# Python + bundled server
|
|
- uses: astral-sh/setup-uv@v5
|
|
- run: uv python install 3.13
|
|
- run: uv sync
|
|
- run: |
|
|
uv pip install pyinstaller
|
|
uv run pyinstaller --name kjvstudy-server --onedir --console \
|
|
--add-data "kjvstudy_org/templates:kjvstudy_org/templates" \
|
|
--add-data "kjvstudy_org/static:kjvstudy_org/static" \
|
|
--add-data "kjvstudy_org/data:kjvstudy_org/data" \
|
|
--hidden-import uvicorn.logging --hidden-import uvicorn.loops \
|
|
--hidden-import uvicorn.loops.auto --hidden-import uvicorn.protocols \
|
|
--hidden-import uvicorn.protocols.http --hidden-import uvicorn.protocols.http.auto \
|
|
--hidden-import uvicorn.protocols.websockets --hidden-import uvicorn.protocols.websockets.auto \
|
|
--hidden-import uvicorn.lifespan --hidden-import uvicorn.lifespan.on \
|
|
--collect-submodules kjvstudy_org kjvstudy_org/server.py
|
|
|
|
# Rust + Tauri
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
- uses: swatinem/rust-cache@v2
|
|
with:
|
|
workspaces: './src-tauri -> target'
|
|
|
|
# Install Tauri CLI v2
|
|
- name: Install Tauri CLI
|
|
run: npm install -g @tauri-apps/cli@^2.0.0
|
|
|
|
# Build manually instead of using tauri-action (which defaults to v1)
|
|
- name: Build Tauri app
|
|
run: cargo tauri build
|
|
working-directory: src-tauri
|
|
|
|
# Upload artifacts
|
|
- name: Upload DMG
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: KJV-Study-macOS
|
|
path: src-tauri/target/release/bundle/dmg/*.dmg
|
|
|
|
# Create release
|
|
- name: Create Release
|
|
uses: softprops/action-gh-release@v1
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
with:
|
|
draft: true
|
|
files: src-tauri/target/release/bundle/dmg/*.dmg
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|