Skip to content

Push release

Push release #100

Workflow file for this run

name: "publish"
on:
push:
branches:
- release
# This is the example from the readme.
# On each push to the `release` branch it will create or update a GitHub release, build your app, and upload the artifacts to the release.
jobs:
publish-tauri:
permissions:
contents: write
strategy:
fail-fast: false
matrix:
include:
- platform: "macos-latest" # for Arm based macs (M1 and above).
args: "--target aarch64-apple-darwin"
- platform: "macos-latest" # for Intel based macs.
args: "--target x86_64-apple-darwin"
- platform: "ubuntu-22.04" # for Tauri v1 you could replace this with ubuntu-20.04.
args: ""
- platform: "windows-latest"
args: ""
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: lts/*
- uses: pnpm/action-setup@v4
with:
version: 9.7.1
- name: install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
# Those targets are only used on macos runners so it's in an `if` to slightly speed up windows and linux builds.
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin,x86_64-apple-darwin' || '' }}
# - name: Install winget // Removed 9-25-25
# uses: Cyberboss/install-winget@v1
# if: matrix.platform == 'windows-latest'
# with:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# wget_release_id: latest
- name: Install Protoc
uses: arduino/setup-protoc@v3
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
# - name: Install build dependencies (windows only)
# if: matrix.platform == 'windows-latest'
# run: |
# winget install protobuf --accept-source-agreements --accept-package-agreements
- name: install dependencies (mac only)
if: matrix.platform == 'macos-latest' # This must match the platform value defined above.
run: brew install protobuf libiconv
# webkitgtk 4.0 is for Tauri v1 - webkitgtk 4.1 is for Tauri v2.
# You can remove the one that doesn't apply to your app to speed up the workflow a bit.
- name: install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-22.04' # This must match the platform value defined above.
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.0-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf g++ gobjc++-mingw-w64 lld llvm nsis libasound2-dev protobuf-compiler
# webkitgtk 4.0 is for Tauri v1 - webkitgtk 4.1 is for Tauri v2.
# You can remove the one that doesn't apply to your app to speed up the workflow a bit.
- name: install frontend dependencies
run: pnpm install # change this to npm, pnpm or bun depending on which one you use.
- uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_OPTIONS: "--max_old_space_size=4096"
with:
projectPath: apps/fluster
distPath: apps/fluster/dist
tagName: app-v__VERSION__ # the action automatically replaces \_\_VERSION\_\_ with the app version.
releaseName: "Fluster v__VERSION__"
releaseBody: |
See the assets to download this version and install.
> If you're on a mac, you'll have to open your system settings and approve Fluster before you can open it because I'm far too poor to afford an Apple developer account.
| Architecture | File |
| ------------ | ---- |
| Mac (Apple chip) | Fluster_aarch64.app.tar.gz |
| Mac (intel chip) | Fluster_x64.app.tar.gz |
| Windows | .msi or .exe |
| Linux | .deb or .AppImage |
releaseDraft: false
prerelease: false
tauriScript: pnpm tauri
args: ${{ matrix.args }}