Files
francy51 481419afc1
Some checks failed
CI / TypeScript Lint + Typecheck + Test (push) Has been cancelled
CI / Rust Format + Clippy + Test (push) Has been cancelled
ci: add CI pipeline for Rust and TypeScript tests
- Gitea Actions workflow with parallel TypeScript and Rust jobs
- TypeScript: bun install, lint, typecheck, test
- Rust: fmt check, clippy, test with Tauri system deps
- Add rust-toolchain.toml to pin Rust 1.93.0 for reproducibility

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-01 14:26:50 -04:00

79 lines
1.8 KiB
YAML

name: CI
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
jobs:
typescript:
name: TypeScript Lint + Typecheck + Test
runs-on: ubuntu-latest
defaults:
run:
working-directory: MosaicIQ
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Lint
run: bun run lint
- name: Typecheck
run: bun run tsc --noEmit
- name: Test
run: bun test
rust:
name: Rust Format + Clippy + Test
runs-on: ubuntu-latest
defaults:
run:
working-directory: MosaicIQ/src-tauri
steps:
- uses: actions/checkout@v4
- name: Install Tauri system dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
build-essential \
curl \
wget \
file \
libxdo-dev \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-dev
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- name: Cache Cargo artifacts
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
MosaicIQ/src-tauri/target
key: rust-${{ runner.os }}-${{ hashFiles('MosaicIQ/src-tauri/Cargo.lock') }}
restore-keys: rust-${{ runner.os }}-
- name: Check formatting
run: cargo fmt --all -- --check
- name: Clippy
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Run tests
run: cargo test --all-features