Skip to content

versions

versions #1

Workflow file for this run

name: Release
on:
push:
tags:
- 'v*'
# Only one release workflow runs at a time — prevents two tag pushes from
# racing to create the same GitHub Release.
concurrency:
group: release-${{ github.ref }}
cancel-in-progress: false
jobs:
build-linux:
name: Build (Linux)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
libappindicator3-dev \
librsvg2-dev \
patchelf \
rpm \
libxdo-dev
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-unknown-linux-gnu
- name: Cache Rust build artifacts
uses: Swatinem/rust-cache@v2
with:
workspaces: ". -> target"
- name: Install Node
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
cache-dependency-path: apps/desktop/package-lock.json
- name: Install npm dependencies
run: npm ci
working-directory: apps/desktop
- name: Build and publish release (Linux)
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
with:
tagName: ${{ github.ref_name }}
releaseName: mapxr ${{ github.ref_name }}
releaseBody: |
See [CHANGELOG.md](https://github.com/${{ github.repository }}/blob/main/CHANGELOG.md) for release notes.
releaseDraft: false
prerelease: ${{ contains(github.ref_name, '-') }}
projectPath: apps/desktop
args: --bundles appimage,deb,rpm
build-windows:
name: Build (Windows)
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-pc-windows-msvc
- name: Cache Rust build artifacts
uses: Swatinem/rust-cache@v2
with:
workspaces: ". -> target"
- name: Install Node
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
cache-dependency-path: apps/desktop/package-lock.json
- name: Install npm dependencies
run: npm ci
working-directory: apps/desktop
- name: Build and publish release (Windows)
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
with:
tagName: ${{ github.ref_name }}
releaseName: mapxr ${{ github.ref_name }}
releaseBody: |
See [CHANGELOG.md](https://github.com/${{ github.repository }}/blob/main/CHANGELOG.md) for release notes.
releaseDraft: false
prerelease: ${{ contains(github.ref_name, '-') }}
projectPath: apps/desktop
args: --bundles msi,nsis