Skip to content

fixed webview + server ping #274

fixed webview + server ping

fixed webview + server ping #274

Workflow file for this run

name: CI
on:
push:
branches:
- "**"
pull_request:
branches:
- "**"
jobs:
bindings-check:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
- name: Rust cache
uses: Swatinem/rust-cache@v2
with:
workspaces: src-tauri
shared-key: bindings-check
- name: Install system deps
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
libjavascriptcoregtk-4.1-dev \
libappindicator3-dev \
librsvg2-dev
- name: Create stub resource files
working-directory: src-tauri
run: touch wine.tar.zst winetricks cabextract
- name: Regenerate TS bindings
working-directory: src-tauri
run: cargo test --features steam --lib export_bindings
- name: Verify bindings are committed
run: |
if ! git diff --exit-code -- src/bindings.ts; then
echo "::error::src/bindings.ts is out of date. Run 'cargo test --features steam --lib export_bindings' from src-tauri/ and commit the result."
exit 1
fi
build-tauri:
strategy:
fail-fast: false
matrix:
include:
- platform: ubuntu-24.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/*
cache: 'npm'
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
- name: Rust cache
uses: Swatinem/rust-cache@v2
with:
workspaces: src-tauri
shared-key: ${{ matrix.platform }}-${{ matrix.args }}
- name: Install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-24.04'
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-0=2.44.0-2 \
libwebkit2gtk-4.1-dev=2.44.0-2 \
libjavascriptcoregtk-4.1-0=2.44.0-2 \
libjavascriptcoregtk-4.1-dev=2.44.0-2 \
gir1.2-javascriptcoregtk-4.1=2.44.0-2 \
gir1.2-webkit2-4.1=2.44.0-2 \
libappindicator3-dev \
librsvg2-dev \
patchelf \
musl-tools
- name: Cache Wine build
if: matrix.platform == 'ubuntu-24.04'
id: cache-wine
uses: actions/cache@v4
with:
path: |
src-tauri/wine.tar.zst
src-tauri/winetricks
src-tauri/cabextract
key: wine-10.5-musl-${{ hashFiles('scripts/download-wine.sh') }}
- name: Download Wine (ubuntu only)
if: matrix.platform == 'ubuntu-24.04' && steps.cache-wine.outputs.cache-hit != 'true'
run: ./scripts/download-wine.sh
- name: Prepare sidecar files for AppImage (ubuntu only)
if: matrix.platform == 'ubuntu-24.04'
run: |
mkdir -p "/tmp/lib/SS13 Launcher"
cp src-tauri/wine.tar.zst "/tmp/lib/SS13 Launcher/"
cp src-tauri/winetricks "/tmp/lib/SS13 Launcher/"
cp src-tauri/cabextract "/tmp/lib/SS13 Launcher/"
chmod +x "/tmp/lib/SS13 Launcher/winetricks" "/tmp/lib/SS13 Launcher/cabextract"
- name: Install frontend dependencies
run: npm install
- name: Build Tauri app
run: npm run tauri -- build --features cm_ss13 --config src-tauri/tauri.cm.conf.json ${{ matrix.args }}
env:
ADD_DIR: "/tmp/lib/SS13 Launcher"