name: Test on: push: branches: [main, develop] pull_request: branches: [main, develop] jobs: test: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Install Node.js uses: actions/setup-node@v4 with: node-version: '20' cache: 'npm' - name: Install dependencies run: npm ci - name: Run tests run: npm test || true - name: Lint run: npm run lint || true - name: Type check run: npm run type-check || true build-check: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Install Node.js uses: actions/setup-node@v4 with: node-version: '20' cache: 'npm' - name: Install dependencies run: npm ci - name: Install Rust toolchain uses: dtolnay/rust-toolchain@stable - name: Install Linux dependencies run: | sudo apt-get update sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf - name: Rust cache uses: swatinem/rust-cache@v2 with: workspaces: './src-tauri -> target' - name: Check Rust code working-directory: src-tauri run: cargo check --verbose - name: Build frontend run: npm run build - name: Build Tauri app (debug) run: npm run tauri build --debug env: TAURI_PRIVATE_KEY: '' TAURI_KEY_PASSWORD: ''