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
|
name: VTK Master Testing
on:
pull_request:
push:
branches:
# To resolve issues on VTK master and test, use this branch name pattern
- "maint/vtk-master*"
workflow_dispatch:
schedule:
- cron: "0 4 * * *"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
ALLOW_PLOTTING: true
SHELLOPTS: "errexit:pipefail"
jobs:
VTK-master:
# only for pull requests, run only when 'vtk_master' label exists
if: ${{ github.event_name != 'pull_request' || contains(github.event.pull_request.labels.*.name, 'vtk-master') }}
name: Linux VTK Master Testing
permissions:
contents: read
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
python-version: [3.9, "3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 2
persist-credentials: false
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "pip"
- uses: actions/cache@v4
with:
path: ~/.local/share/pyvista/examples
key: Examples-1-${{ hashFiles('*') }}
restore-keys: |
Examples-1-
- name: Install PyVista Testing Requirements
run: |
pip install --upgrade pip
pip install . --group test
- uses: awalsh128/cache-apt-pkgs-action@4c82c3ccdc1344ee11e9775dbdbdf43aa8a5614e
with:
packages: xvfb
version: 3.0
- name: Install nightly VTK
run: |
pip install --upgrade vtk --pre --no-cache --extra-index-url https://wheels.vtk.org
- name: Core Testing (no GL)
run: python -m pytest --cov=pyvista -v tests/core tests/examples --test_downloads
- name: Plotting Testing (uses GL)
run: xvfb-run -a python -m pytest --fail_extra_image_cache -v --ignore=tests/core --ignore=tests/examples --generated_image_dir debug_images
- name: Upload Generated Images
if: always()
uses: actions/upload-artifact@v4
with:
name: debug_images-${{ github.job }}-${{ join(matrix.* , '-') }}
path: debug_images
- name: Software Report
if: always()
run: |
xvfb-run -a python -c "import pyvista; print(pyvista.Report()); from pyvista import examples; print('User data path:', examples.USER_DATA_PATH)"
which python
pip list
pip show vtk
|