mirror of
https://github.com/trustedsec/hate_crack.git
synced 2026-07-28 14:47:22 -07:00
ci: add multi-version Python testing and status banners
- Separate lint job for ruff and mypy checks on Python 3.13 - Add pytest matrix strategy to test Python 3.9 through 3.14 - Add GitHub Actions status badge to README - Document CI/CD pipeline and what each check does - Include pass/fail criteria for linting, type checking, and testing - Link to Actions tab for detailed workflow results
This commit is contained in:
@@ -5,8 +5,34 @@ on:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: "3.13"
|
||||
|
||||
- name: Install uv
|
||||
run: python -m pip install --upgrade pip uv==0.9.28
|
||||
|
||||
- name: Install dev dependencies
|
||||
run: |
|
||||
uv venv .venv
|
||||
uv pip install --python .venv/bin/python ".[dev]"
|
||||
|
||||
- name: Run ruff
|
||||
run: .venv/bin/ruff check hate_crack
|
||||
|
||||
- name: Run mypy
|
||||
run: .venv/bin/mypy hate_crack
|
||||
|
||||
pytest:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
@@ -14,7 +40,7 @@ jobs:
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: "3.13"
|
||||
python-version: ${{ matrix.python-version }}
|
||||
|
||||
- name: Install system dependencies
|
||||
run: sudo apt-get update && sudo apt-get install -y p7zip-full transmission-cli
|
||||
@@ -27,12 +53,6 @@ jobs:
|
||||
uv venv .venv
|
||||
uv pip install --python .venv/bin/python ".[dev]"
|
||||
|
||||
- name: Run ruff
|
||||
run: .venv/bin/ruff check hate_crack
|
||||
|
||||
- name: Run mypy
|
||||
run: .venv/bin/mypy hate_crack
|
||||
|
||||
- name: Run tests
|
||||
env:
|
||||
HATE_CRACK_RUN_E2E: "0"
|
||||
|
||||
Reference in New Issue
Block a user