diff --git a/.gitea/workflows/python.yml b/.gitea/workflows/python.yml index 011ba51..06377a8 100644 --- a/.gitea/workflows/python.yml +++ b/.gitea/workflows/python.yml @@ -1,12 +1,15 @@ name: Python +env: + APT_DEPS: git python3 python3-pip python3-venv python3-gi python3-cairo python3-dbus python3-pyudev python3-psutil python3-evdev python3-yaml python3-xlib python3-pillow gir1.2-gtk-3.0 + on: pull_request: jobs: - fmt: - runs-on: alpine - container: node:26-alpine + static: + runs-on: debian + container: node:26-trixie-slim steps: - name: Checkout @@ -14,10 +17,8 @@ jobs: - name: Install tools run: | - apk add --no-cache \ - git \ - python3 \ - py3-pip + apt-get update + apt-get install -y --no-install-recommends git python3 python3-pip python3-venv python3 -m venv .venv . .venv/bin/activate pip install --no-cache-dir ruff @@ -27,32 +28,15 @@ jobs: . .venv/bin/activate ruff format --check . - lint: - runs-on: alpine - container: node:26-alpine - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install tools - run: | - apk add --no-cache \ - git \ - python3 \ - py3-pip - python3 -m venv .venv - . .venv/bin/activate - pip install --no-cache-dir ruff - - name: Lint run: | . .venv/bin/activate ruff check . - test: - runs-on: alpine - container: node:26-alpine + verify: + if: always() + runs-on: debian + container: node:26-trixie-slim steps: - name: Checkout @@ -60,20 +44,16 @@ jobs: - name: Install tools run: | - apk add --no-cache \ - git \ - python3 \ - py3-pip \ - py3-pillow \ - build-base - python3 -m venv .venv + apt-get update + apt-get install -y --no-install-recommends $APT_DEPS build-essential python3-dev + python3 -m venv --system-site-packages .venv . .venv/bin/activate - pip install --no-cache-dir \ - typer \ - pillow \ - materialyoucolor \ - jinja2 \ - pytest + pip install --no-cache-dir basedpyright nuitka . + + - name: Type check + run: | + . .venv/bin/activate + basedpyright - name: Test run: | @@ -81,52 +61,7 @@ jobs: cd cli python -m pytest tests/ -v - typecheck: - runs-on: alpine - container: node:26-alpine - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install tools - run: | - apk add --no-cache \ - git \ - python3 \ - py3-pip - python3 -m venv .venv - . .venv/bin/activate - pip install --no-cache-dir basedpyright typer pillow materialyoucolor jinja2 - - - name: Type check - run: | - . .venv/bin/activate - basedpyright - - buildcheck: - runs-on: alpine - container: node:26-alpine - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install tools - run: | - apk add --no-cache \ - git \ - python3 \ - py3-pip \ - build-base \ - python3-dev \ - gcc \ - g++ - python3 -m venv .venv - . .venv/bin/activate - pip install --no-cache-dir nuitka - - name: Nuitka module check run: | . .venv/bin/activate - nuitka --module --include-package=zshell cli/src/zshell/ + nuitka --module --include-package=zshell cli/src/zshell/ \ No newline at end of file