Files
codex-proxy-rs/.github/workflows/ci.yml
T
2026-07-02 12:09:22 +08:00

65 lines
1.4 KiB
YAML

name: CI
on:
push:
branches:
- '**'
pull_request:
permissions:
contents: read
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
backend:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt,clippy
- name: Cache Rust
uses: Swatinem/rust-cache@v2
with:
workspaces: backend -> target
- name: Rust format
run: cargo fmt --manifest-path backend/Cargo.toml --check
- name: Rust clippy
run: cargo clippy --manifest-path backend/Cargo.toml --all-targets --all-features --locked -- -D warnings
- name: Rust tests
run: cargo test --manifest-path backend/Cargo.toml --test main --locked
frontend:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Setup pnpm
uses: pnpm/action-setup@v6
with:
version: 11.7.0
- name: Setup Node
uses: actions/setup-node@v6
with:
node-version: 24
cache: pnpm
cache-dependency-path: frontend/pnpm-lock.yaml
- name: Install frontend dependencies
run: pnpm --dir frontend install --frozen-lockfile
- name: Frontend build
run: pnpm --dir frontend build