AppFlowy/.github/workflows/frontend_rust.yml
2022-01-23 11:34:41 +08:00

66 lines
1.5 KiB
YAML

name: Frontend_Rust
on:
push:
branches: [ main ]
paths:
- 'frontend/rust-lib'
- 'shared-lib'
pull_request:
branches: [ main ]
paths:
- 'frontend/rust-lib'
- 'shared-lib'
env:
CARGO_TERM_COLOR: always
jobs:
rust-fmt:
name: Rustfmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- run: rustup component add rustfmt
working-directory: frontend/rust-lib
- run: cargo fmt --all -- --check
working-directory: frontend/rust-lib/
rust-clippy:
runs-on: ubuntu-latest
name: Clippy
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- run: rustup component add clippy
working-directory: frontend/rust-lib
- run: cargo clippy
working-directory: frontend/rust-lib
tests:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Rust
run: |
curl \
--proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source $HOME/.cargo/env
rustup toolchain install stable
rustup default stable
- name: Frontend tests
working-directory: frontend/rust-lib
run: cargo test
- name: Shared-lib tests
working-directory: shared-lib
run: cargo test