1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
os: ["windows-latest", "ubuntu-latest", "macos-latest"]
python-version: ["3.10", "3.11", "3.13"]
env:
PYTHON_VERSION: ${{ matrix.python-version }}
OS: ${{ matrix.os }}
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
steps:
- name: Checkout source
uses: actions/checkout@v5
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install -U codecov pytest pytest-cov mypy
- name: Install trollsift
run: |
pip install --no-deps -e .
- name: Run unit tests
run: |
pytest --cov=trollsift trollsift/tests --cov-report=xml
- name: Run mypy
run: |
mypy trollsift
- name: Upload unittest coverage to Codecov
uses: codecov/codecov-action@v5
with:
flags: unittests
files: ./coverage.xml
env_vars: OS,PYTHON_VERSION
|