V1.3.1 patch #354
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow conducts CI testing across all of VICE's branches. | |
name: GitHub CI | |
on: [push, pull_request] | |
jobs: | |
build: | |
name: ${{ matrix.os }} | Python ${{ matrix.python-version }} | ${{ matrix.compiler }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: ["ubuntu-latest", "macos-latest"] | |
compiler: [gcc-10, clang] | |
python-version: | |
- "3.8" | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
- "3.12" | |
exclude: | |
# Mac OS builds run with clang only | |
- os: "macos-latest" | |
compiler: gcc-10 | |
# Ubuntu builds run with gcc only | |
- os: "ubuntu-latest" | |
compiler: clang | |
env: | |
COMPILER: ${{ matrix.compiler }} | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v2 | |
- name: Setup Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
# compile-time dependency versions reflect those in setup.py | |
- name: Install Dependencies | |
shell: bash | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install setuptools>=18.0 | |
python -m pip install Cython>=3.0 | |
- name: Display Environment Variables | |
shell: bash | |
run: | | |
echo "PATH: " $PATH | |
echo "COMPILER: " `which $COMPILER` | |
echo "COMPILER VERSION: " `$COMPILER --version` | |
echo "PYTHON: " `which python` | |
echo "PYTHON VERSION: " `python --version` | |
echo "MAKE: " `which make` | |
echo "MAKE VERSION: " `make --version` | |
- name: Compile and Install | |
shell: bash | |
run: | | |
make CC=$COMPILER | |
python -m pip install . -v | |
make clean | |
- name: Tests | |
shell: bash | |
run: | | |
make tests | |
# Tests leave behind a test_<platform>_<version>.log file under ./vice | |
- name: Upload Test Log | |
uses: actions/upload-artifact@v2 | |
with: | |
name: testlogs | |
path: ./vice/*.log | |
- name: Clean Source Tree | |
shell: bash | |
run: | | |
make clean | |