Skip to content

Update Jenkinsfile (#545) #1769

Update Jenkinsfile (#545)

Update Jenkinsfile (#545) #1769

Workflow file for this run

on: [push, pull_request]
name: Tox Multi-platform Compatibility Test
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-2019]
python-version: ['3.8' ,'3.9', '3.10', '3.11']
frontend: ["", "PySide6"]
fail-fast: false
name: Python ${{ matrix.python-version }} ${{ matrix.os }} ${{ matrix.frontend }} build
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: 'pip' # caching pip dependencies
- name: Install Linux system dependencies for PySide
if: |
contains(matrix.os, 'ubuntu') && contains(matrix.frontend, 'PySide6')
run: |
sudo apt update
sudo apt-get install freeglut3 freeglut3-dev
- name: Install requirements
run: |
pip install wheel uv
uv pip install --system -r requirements/requirements_tox.txt tox-uv
- uses: actions/github-script@v6
id: tox-env
with:
script: |
const frontend = "${{matrix.frontend}}"
const toxEnv = "py${{matrix.python-version}}".replace('.','')
if(frontend === ""){
return toxEnv
}
return "py${{matrix.python-version}}".replace('.','') + "-${{matrix.frontend}}"
result-encoding: string
- name: Run tox
run: tox -e ${{ steps.tox-env.outputs.result }}
env:
UV_EXTRA_INDEX_URL: ${{vars.PIP_EXTRA_INDEX_URL}}
UV_INDEX_STRATEGY: "unsafe-best-match"
QT_QPA_PLATFORM: "offscreen"
DISPLAY: ':99.0'