Skip to content

ci test codecov

ci test codecov #10

---
name: Build & Lint
on:
pull_request:
branches:
- main
push:
branches:
- main
- test-ci
defaults:
run:
shell: bash
jobs:
build-test:
name: Test Run (${{ matrix.python-version }}, ${{ matrix.os }})
runs-on: ${{ matrix.os }}
env:
DISPLAY: ':99.0'
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest"]
python-version: ["3.10"]
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Cache pip dependencies
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install pytest-cov
- name: Lint and check code formatting
run: |
pipx install ruff
ruff check --output-format=github --target-version=py310
ruff format --diff --target-version=py310
continue-on-error: true
- name: Test dataloaders
run: >
pytest --cov=$GITHUB_WORKSPACE --cov-append --cov-report=xml
--cov-config=.coveragerc piva/tests/dataloaders_test.py
- name: Test viewers - install prerequisites
run: >
sudo apt install libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0
libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0
libxcb-xfixes0 x11-utils
- name: Test viewers - configure
run: >
/sbin/start-stop-daemon --start --quiet --pidfile
/tmp/custom_xvfb_99.pid --make-pidfile --background --exec
/usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX
- name: Test viewers - run tests
run: >
pytest --cov=$GITHUB_WORKSPACE --cov-append --cov-report=xml
--cov-config=.coveragerc piva/tests/viewers_test.py
- name: Upload coverage to Codecov
if: >
${{ matrix.os == 'ubuntu-latest'
&& matrix.python-version == '3.10' }}
uses: codecov/codecov-action@v3
with:
files: ./coverage.xml
token: ${{ secrets.CODECOV_TOKEN }}
slug: pudeIko/piva