Skip to content

Merge dev into main for 0.6.0-beta.2 #412

Merge dev into main for 0.6.0-beta.2

Merge dev into main for 0.6.0-beta.2 #412

Workflow file for this run

name: tests
on:
push:
branches: [main, dev]
pull_request:
branches: [main, dev]
workflow_dispatch:
jobs:
pytest:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ['3.10', '3.11', '3.12']
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
cache: pip
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r tests/requirements-test.txt
pip install -r scripts/requirements.txt
pip install ruff==0.11.13
- name: Lint (ruff)
run: ruff check scripts/ tests/ hooks/
- name: Format check (ruff)
run: ruff format --check scripts/ tests/ hooks/
- name: Validate plugin config
run: python3 scripts/validate_config.py .
- name: Fragment-registry drift
run: python3 scripts/check_fragment_registry.py
- name: Validate product requirements and bindings
run: python3 scripts/check_specs.py
- name: Require a proposal for changed requirements or decisions
if: github.event_name == 'pull_request'
run: python3 scripts/check_specs.py --changed-against "${{ github.event.pull_request.base.sha }}"
- name: Run pytest
run: pytest tests/ -v --tb=short --cov=scripts --cov-report=term-missing --cov-report=xml
- name: Upload coverage to Codecov
if: matrix.python-version == '3.12'
uses: codecov/codecov-action@0fb7174895f61a3b6b78fc075e0cd60383518dac # v5.5.5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
fail_ci_if_error: false