From 84d099d1aeea28136af4595483aaafaa79390e61 Mon Sep 17 00:00:00 2001 From: Godmode Galactus Date: Fri, 29 Nov 2024 17:45:22 +0100 Subject: [PATCH] adding ci job --- .github/workflows/ci.yml | 61 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..51b918e --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,61 @@ +name: Rust CI + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Set up Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: stable + profile: minimal + override: true + + - name: Install Clippy + run: rustup component add clippy + + - name: Run Clippy + run: cargo clippy --all-targets --all-features -- -D warnings + + - name: Install Rustfmt + run: rustup component add rustfmt + + - name: Run Rustfmt + run: cargo fmt -- --check + + - name: Build + run: cargo build --verbose + + - name: Run tests + run: cargo test --verbose + + - name: Install Cargo Audit + run: cargo install cargo-audit + + - name: Run Cargo Audit + run: cargo audit + + - name: Install Tarpaulin + run: cargo install cargo-tarpaulin + + - name: Run Tarpaulin + run: cargo tarpaulin --out Xml + + - name: Upload Coverage to Codecov + uses: codecov/codecov-action@v2 + with: + files: ./coverage.xml + fail_ci_if_error: true \ No newline at end of file