From 0ce353b92b49f1c443803bed9bc87bd9c0cd21ad Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Fri, 27 Sep 2024 18:09:00 +0200 Subject: [PATCH] ci: add format and clippy check Signed-off-by: Sergio Lopez --- .github/workflows/code_quality.yml | 41 ++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 .github/workflows/code_quality.yml diff --git a/.github/workflows/code_quality.yml b/.github/workflows/code_quality.yml new file mode 100644 index 0000000..e040a35 --- /dev/null +++ b/.github/workflows/code_quality.yml @@ -0,0 +1,41 @@ +name: Code Quality +on: + push: + branches: + - main + pull_request: + create: + +jobs: + build: + if: github.event_name == 'pull_request' + name: Code Quality (clippy, rustfmt) + runs-on: ubuntu-latest + strategy: + matrix: + rust: + - stable + target: + - x86_64-unknown-linux-gnu + steps: + - name: Code checkout + uses: actions/checkout@v2 + - name: Install Rust toolchain (${{ matrix.rust }}) + uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ matrix.rust }} + target: ${{ matrix.target }} + override: true + components: rustfmt, clippy + + - name: Install packages + run: sudo apt-get update && sudo apt-get -y install libclang-dev + + - name: Download libkrun.h + run: sudo curl -o /usr/include/libkrun.h https://raw.githubusercontent.com/containers/libkrun/refs/heads/main/include/libkrun.h + + - name: Formatting (rustfmt) + run: cargo fmt -- --check + + - name: Clippy (all features) + run: cargo clippy --all-targets --all-features