diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..e52ecc6 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,40 @@ +on: + pull_request: + push: + branches: [main] + +jobs: + cargo-test: + name: Run Tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: dtolnay/rust-toolchain@master + with: + toolchain: stable + - uses: Leafwing-Studios/cargo-cache@v2 + - name: Cargo test + run: cargo test --all --all-features + + cargo-clippy: + name: Run Clippy + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: dtolnay/rust-toolchain@master + with: + toolchain: stable + - uses: Leafwing-Studios/cargo-cache@v2 + - name: Cargo clippy + run: cargo clippy --all --all-features -- -D warnings + + cargo-fmt: + name: Check Formatting + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: dtolnay/rust-toolchain@master + with: + toolchain: stable + - name: Cargo fmt + run: cargo fmt --all --check \ No newline at end of file