diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0ff6139..d444a4f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,32 +5,57 @@ on: branches: [main] pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: - test: + lint: runs-on: ubuntu-latest - steps: - uses: actions/checkout@v6 - - uses: actions/setup-python@v6 with: python-version: "3.13" cache: pip - - - name: Install dependencies - run: pip install -e ".[test]" - + - run: pip install -e ".[test]" - name: Lint (ruff) run: ruff check . - - name: Format check (ruff) run: ruff format --check . + typecheck: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 + with: + python-version: "3.13" + cache: pip + - run: pip install -e ".[test]" - name: Type check (mypy) run: mypy stellenscout/ daily_task.py - - name: Dependency audit (pip-audit) - run: pip install pip-audit && pip-audit --strict --desc -r requirements.txt - + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 + with: + python-version: "3.13" + cache: pip + - run: pip install -e ".[test]" - name: Tests run: pytest -v --cov=stellenscout --cov-report=term + + audit: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 + with: + python-version: "3.13" + cache: pip + - run: pip install -e ".[test]" + - name: Dependency audit (pip-audit) + run: pip install pip-audit && pip-audit --strict --desc -r requirements.txt