57 lines
1.6 KiB
YAML
57 lines
1.6 KiB
YAML
name: Launcher checks
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: checks-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
publisher:
|
|
# Ubuntu 22.04 has no minisign package. Keep the desktop compatibility
|
|
# check there, but exercise real signature verification on Ubuntu 24.04.
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- run: sudo apt-get update && sudo apt-get install -y minisign
|
|
- run: python3 -m unittest discover -s scripts -p 'test_*.py'
|
|
admission-client:
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-java@v4
|
|
with:
|
|
distribution: temurin
|
|
java-version: '25'
|
|
- name: Check the Minigames admission companion
|
|
working-directory: admission-client
|
|
run: ./gradlew test build --no-daemon
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: shacraft-admission-client
|
|
if-no-files-found: error
|
|
path: admission-client/build/libs/shacraft-admission-client-0.1.0.jar
|
|
check:
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 22
|
|
cache: npm
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
- name: Install Linux desktop dependencies
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev patchelf
|
|
- run: npm ci
|
|
- run: npm test
|
|
- run: npm run build
|
|
- run: cargo test --locked --manifest-path src-tauri/Cargo.toml
|