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
|
cache_epoch: 0 # <- increase number to clear cache.
action_cache: actions/cache@v4
action_checkout: actions/checkout@v4
action_setup_python: actions/setup-python@v5
action_upload_artifact: actions/upload-artifact@v4
action_download_artifact: actions/download-artifact@v4
skippy_enabled: true
default_python: 3.13.3
vars:
- &dist_linux
variant: Linux
os: Linux
platform: ubuntu-22.04
- &dist_macos
variant: macOS
os: macOS
platform: macos-15
- &dist_win
variant: Windows
os: Windows
platform: windows-2022
- &dist_other
os: Linux
platform: ubuntu-latest
jobs:
# Platform tests.
- &test
<<: *dist_linux
type: test
reqs: ["dist", "test"]
skiplists: ["job_test", "os_linux"]
test_args: -p no:pytest-qt --ignore=test/gui_qt
- <<: *test
<<: *dist_macos
cache_extra_deps: ["osx/deps.sh"]
skiplists: ["job_test", "os_macos"]
- <<: *test
<<: *dist_win
skiplists: ["job_test", "os_windows"]
# Python tests.
- &python_test
<<: *test
<<: *dist_other
variant: Python Latest Supported
skiplists: ["job_test", "os_linux", "os_macos", "os_windows"]
- <<: *python_test
variant: Python 3.12
python: "3.12"
- <<: *python_test
variant: Python 3.11
python: "3.11"
- <<: *python_test
variant: Python 3.10
python: "3.10"
# Qt GUI tests.
- <<: *test
type: test_gui_qt
variant: Qt GUI
reqs: ["dist", "dist_extra_gui_qt", "test"]
skiplists: ["job_test_gui_qt"]
test_args: test/gui_qt
# Packaging tests.
- <<: *dist_other
type: test_packaging
variant: Packaging
reqs: ["packaging", "setup"]
skiplists: ["job_test_packaging"]
# Code quality.
- <<: *dist_other
type: test_code_quality
variant: Code Quality
reqs: ["code_quality"]
# Platform builds.
- &build
<<: *dist_linux
type: build
needs: [test_linux]
reqs: ["build", "setup"]
cache_extra_deps: ["reqs/dist_*.txt", "linux/appimage/deps.sh"]
skiplists: ["job_build", "os_linux"]
- <<: *build
<<: *dist_macos
needs: [test_macos]
cache_extra_deps: ["reqs/dist_*.txt", "osx/deps.sh"]
skiplists: ["job_build", "os_macos"]
- <<: *build
<<: *dist_win
needs: [test_windows]
cache_extra_deps: ["reqs/dist_*.txt", "windows/dist_deps.sh"]
skiplists: ["job_build", "os_windows"]
|