mirror of
https://github.com/nekename/OpenDeck.git
synced 2026-10-28 09:44:01 +00:00
77 lines
2.1 KiB
YAML
77 lines
2.1 KiB
YAML
name: "publish"
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- release
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
publish-tauri:
|
|
permissions:
|
|
contents: write
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- platform: "macos-latest"
|
|
args: "--target aarch64-apple-darwin"
|
|
- platform: "macos-latest"
|
|
args: "--target x86_64-apple-darwin"
|
|
- platform: "ubuntu-22.04"
|
|
args: ""
|
|
- platform: "ubuntu-22.04-arm"
|
|
args: ""
|
|
- platform: "windows-latest"
|
|
args: ""
|
|
runs-on: ${{ matrix.platform }}
|
|
env:
|
|
DENO_DIR: deno_cache
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: install Rust stable
|
|
uses: dtolnay/rust-toolchain@stable
|
|
with:
|
|
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin,x86_64-apple-darwin' || '' }}
|
|
|
|
- name: Rust cache
|
|
uses: swatinem/rust-cache@v2
|
|
with:
|
|
workspaces: "./src-tauri -> target"
|
|
|
|
- name: setup Deno
|
|
uses: denoland/setup-deno@v1
|
|
with:
|
|
deno-version: v2.x
|
|
|
|
- name: cache Deno dependencies
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ${{ env.DENO_DIR }}
|
|
key: ${{ hashFiles('deno.lock') }}
|
|
|
|
- name: install frontend dependencies
|
|
run: deno install
|
|
|
|
- name: install dependencies (ubuntu only)
|
|
if: matrix.platform == 'ubuntu-22.04' || matrix.platform == 'ubuntu-22.04-arm'
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf libudev-dev xdg-utils libdbus-1-dev
|
|
|
|
- uses: tauri-apps/tauri-action@v0
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
tauriScript: deno task tauri
|
|
tagName: tv__VERSION__
|
|
releaseName: "OpenDeck v__VERSION__"
|
|
releaseBody: "See the assets to download this version. See the README for installation instructions."
|
|
releaseDraft: true
|
|
prerelease: false
|
|
args: ${{ matrix.args }}
|