Forgejo Action: Run npm and cargo commands in the CI.
This commit is contained in:
parent
2880391c8c
commit
9afd3885e2
2 changed files with 77 additions and 1 deletions
76
.forgejo/workflows/ci.yml
Normal file
76
.forgejo/workflows/ci.yml
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
name: Check
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
check-backend:
|
||||
name: Backend
|
||||
runs-on: docker
|
||||
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install Rust
|
||||
uses: https://codeberg.org/wackbyte/rust-toolchain@trunk
|
||||
with:
|
||||
toolchain: stable
|
||||
components: rustfmt, clippy
|
||||
- name: "Check Format"
|
||||
run: cargo fmt --check
|
||||
working-directory: backend
|
||||
- name: "Build"
|
||||
run: |
|
||||
cargo build
|
||||
cargo build --test
|
||||
working-directory: backend
|
||||
- name: "Lint"
|
||||
run: |
|
||||
rustup component add clippy
|
||||
cargo clippy
|
||||
working-directory: backend
|
||||
- name: "Unit Tests"
|
||||
run: |
|
||||
# hurl needs libxml needs libclang
|
||||
apt update && apt install -y clang
|
||||
cargo test -- --skip api
|
||||
working-directory: backend
|
||||
- name: "Integration Tests"
|
||||
run: cargo test --test api
|
||||
working-directory: backend
|
||||
|
||||
check-frontend:
|
||||
name: Frontend
|
||||
runs-on: docker
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '20'
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
working-directory: frontend
|
||||
|
||||
- name: Check Format
|
||||
run: "npm run format:check"
|
||||
working-directory: frontend
|
||||
|
||||
- name: Lint
|
||||
run: npm run lint
|
||||
working-directory: frontend
|
||||
|
||||
- name: Typecheck
|
||||
run: npm run typecheck || echo "Failed"
|
||||
working-directory: frontend
|
||||
|
||||
- name: Test
|
||||
run: npm run test
|
||||
working-directory: frontend
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue