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 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
|
name: Linux tests
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
linux-qt5:
name: Linux Py${{ matrix.PYTHON_VERSION }} - ${{ matrix.QT_BINDING }} - ${{ matrix.QT_BINDING_VERSION }}
timeout-minutes: 15
runs-on: ubuntu-latest
env:
CI: True
QT_API: ${{ matrix.QT_BINDING }}
PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }}
RUNNER_OS: 'ubuntu'
strategy:
fail-fast: false
matrix:
PYTHON_VERSION: ['3.7', '3.10']
QT_BINDING: ['pyqt5', 'pyside2']
include:
- QT_BINDING_VERSION: 'latest'
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: Install System Packages
run: |
sudo apt-get update --fix-missing
sudo apt-get install -qq pyqt5-dev-tools libxcb-xinerama0 xterm --fix-missing
- name: Install Conda
uses: conda-incubator/setup-miniconda@v3
with:
activate-environment: test
auto-update-conda: false
auto-activate-base: false
python-version: ${{ matrix.PYTHON_VERSION }}
channels: conda-forge,defaults
channel-priority: strict
conda-remove-defaults: true
- name: Install dependencies
shell: bash -l {0}
run: conda env update --file requirements/environment_tests_${{ matrix.QT_BINDING }}_${{ matrix.QT_BINDING_VERSION }}.yml
- name: Install Package
shell: bash -l {0}
run: pip install -e .
- name: Show environment information
shell: bash -l {0}
run: |
conda info
conda list
- name: Run tests
shell: bash -l {0}
run: |
xvfb-run --auto-servernum python example.py
xvfb-run --auto-servernum pytest -x -vv --cov-report xml --cov=qtawesome qtawesome
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
fail_ci_if_error: true
verbose: true
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
linux-qt6:
name: Linux Py${{ matrix.PYTHON_VERSION }} - ${{ matrix.QT_BINDING }} - ${{ matrix.QT_BINDING_VERSION }}
timeout-minutes: 15
runs-on: ubuntu-latest
env:
CI: True
QT_API: ${{ matrix.QT_BINDING }}
PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }}
RUNNER_OS: 'ubuntu'
strategy:
fail-fast: false
matrix:
PYTHON_VERSION: ['3.9', '3.13']
QT_BINDING: ['pyqt6', 'pyside6']
include:
- QT_BINDING_VERSION: 'latest'
- PYTHON_VERSION: '3.13' # PySide6 but specific version (6.8.3) on Python 3.13
QT_BINDING: 'pyside6'
QT_BINDING_VERSION: '6.8.3'
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: Install System Packages
run: |
sudo apt-get update --fix-missing
sudo apt-get install -qq pyqt6-dev-tools --fix-missing
- name: Setup a headless display
uses: pyvista/setup-headless-display-action@v3
with:
qt: true
- name: Install Conda
uses: conda-incubator/setup-miniconda@v3
with:
activate-environment: test
auto-update-conda: false
auto-activate-base: false
python-version: ${{ matrix.PYTHON_VERSION }}
channels: conda-forge,defaults
channel-priority: strict
conda-remove-defaults: true
- name: Install dependencies
shell: bash -l {0}
run: conda env update --file requirements/environment_tests_${{ matrix.QT_BINDING }}_${{ matrix.QT_BINDING_VERSION }}.yml
- name: Install Package
shell: bash -l {0}
run: pip install -e .
- name: Show environment information
shell: bash -l {0}
run: |
conda info
conda list
- name: Run tests
shell: bash -l {0}
run: |
xvfb-run --auto-servernum python example.py
xvfb-run --auto-servernum pytest -x -vv --cov-report xml --cov=qtawesome qtawesome
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
fail_ci_if_error: true
verbose: true
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|