ci: use ubuntu-22.04 since Mono is still included #197
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
name: Tests | |
on: [push, pull_request] | |
env: | |
PY_COLORS: 1 | |
COLUMNS: 110 | |
jobs: | |
test: | |
name: Test | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 10 | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] | |
os: [windows-latest, ubuntu-22.04, macos-latest, macos-13] | |
architecture: [x64, x86] | |
exclude: | |
- os: ubuntu-22.04 | |
architecture: x86 | |
- os: macos-latest | |
architecture: x86 | |
- os: macos-13 | |
architecture: x86 | |
env: | |
PIP_DISABLE_PIP_VERSION_CHECK: 1 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Install system dependencies (Ubuntu) | |
if: ${{ matrix.os == 'ubuntu-22.04' }} | |
run: | | |
sudo dpkg --add-architecture i386 | |
sudo apt-get update | |
sudo apt-get install -y libgfortran5:i386 | |
- name: Mono version (non Windows) | |
if: ${{ matrix.os != 'windows-latest' }} | |
run: mono --version | |
- name: Java version | |
run: java -version | |
- name: Set up Python ${{ matrix.python-version }} (Windows) | |
if: ${{ matrix.os == 'windows-latest' }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: ${{ matrix.architecture }} | |
- name: Set up Python ${{ matrix.python-version }} (non Windows) | |
if: ${{ matrix.os != 'windows-latest' }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Upgrade pip | |
run: | | |
python -m pip install --upgrade pip | |
- name: Build custom wheels | |
run: | | |
python -m pip install --upgrade hatch | |
hatch build --target custom | |
- name: Install from custom-built wheel | |
run: python -m pip install --find-links dist --no-index msl-loadlib | |
- name: Install test dependencies | |
run: python -m pip install msl-loadlib[tests] | |
- name: Run tests | |
run: python -m pytest |