fix: use direct copy commands like TUI workflow instead of find #29
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: desktop | |
| on: | |
| push: | |
| branches: [main, desktop] | |
| pull_request: | |
| branches: [main, desktop] | |
| workflow_dispatch: | |
| concurrency: | |
| group: desktop-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| ci: | |
| name: Desktop CI (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [macos-latest, windows-latest, ubuntu-latest] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10 | |
| - name: Setup Node | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: "lts/*" | |
| cache: "pnpm" | |
| cache-dependency-path: keyless-desktop/pnpm-lock.yaml | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy, rustfmt | |
| - name: Cache cargo | |
| uses: Swatinem/rust-cache@v2 | |
| - name: Install system dependencies (Linux) | |
| if: matrix.os == 'ubuntu-latest' | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev libasound2-dev libx11-dev libxi-dev libxtst-dev libxrandr-dev libxext-dev libxrender-dev libxfixes-dev libxcomposite-dev libxcursor-dev libxdo-dev pkg-config | |
| - name: Install frontend deps | |
| run: pnpm -C keyless-desktop install --frozen-lockfile | |
| - name: Frontend typecheck | |
| run: pnpm -C keyless-desktop exec tsc --noEmit | |
| - name: Frontend tests | |
| run: pnpm -C keyless-desktop test | |
| - name: Format check | |
| run: cargo fmt --all -- --check | |
| - name: Clippy | |
| run: cargo clippy --workspace --all-targets -- -D warnings | |
| - name: Build desktop (debug) | |
| run: | | |
| # Build Rust binary directly to skip slow bundle creation in CI | |
| cargo build --package keyless-desktop |