diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml new file mode 100644 index 0000000..86ab98b --- /dev/null +++ b/.gitea/workflows/ci.yml @@ -0,0 +1,44 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + +env: + CARGO_TERM_COLOR: always + +jobs: + lint: + name: Lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + with: + components: clippy, rustfmt + - name: Format + run: cargo fmt --all -- --check + - name: Clippy + run: | + cargo clippy --workspace --all-targets -- \ + -D warnings \ + -D clippy::unwrap_used \ + -D clippy::expect_used \ + -D clippy::panic \ + -D clippy::unimplemented \ + -D clippy::todo \ + -D clippy::dbg_macro \ + -D clippy::print_stdout \ + -D clippy::print_stderr + + test: + name: Test + runs-on: ubuntu-latest + needs: lint + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + - name: Run tests + run: cargo test --workspace