From 0e8388c29580adc98fa2c707d3156fde3b74cdbd Mon Sep 17 00:00:00 2001 From: Dnomd343 Date: Sat, 7 Jun 2025 18:02:56 +0800 Subject: [PATCH] feat: perform checks and tests on github action --- .github/workflows/build-and-test.yml | 42 ++++++++++++++++++++++++++-- 1 file changed, 40 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 8f1f173..f68ee4c 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -7,9 +7,47 @@ on: workflow_dispatch: jobs: - build-and-test: + check-and-test: runs-on: ubuntu-latest + env: + UV_FROZEN: 1 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: true + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.12" + - name: Set up latest uv + uses: astral-sh/setup-uv@v6 + with: + version: "latest" + + - name: Set up project environment + run: | + uv sync + uv pip install --no-deps -e . + + - name: Run ruff linter + run: uv run ruff check + + - name: Run black formatter + run: uv run black --check . + + - name: Run pyright static analysis + run: uv run pyright + + - name: Run coverage test + run: | + uv run coverage run -m pytest + uv run coverage report + + build-images: + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 @@ -22,7 +60,7 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - - name: Build and Test + - name: Build multi-arch images uses: docker/build-push-action@v6 with: context: .