Backport new runner for building OSX binary (required for release) #2379
This file contains hidden or 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: pygambit Python extension | |
| on: | |
| push: | |
| pull_request: | |
| jobs: | |
| linux: | |
| runs-on: ubuntu-latest | |
| if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name | |
| strategy: | |
| matrix: | |
| python-version: ['3.9', '3.12'] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Set up dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install setuptools cython pytest wheel lxml numpy scipy | |
| - name: Build source distribution | |
| run: | |
| python setup.py sdist | |
| - name: Build from source distribution | |
| run: | | |
| cd dist | |
| pip install -v pygambit*.tar.gz | |
| - name: Run tests | |
| run: pytest | |
| macos-13: | |
| runs-on: macos-13 | |
| if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name | |
| strategy: | |
| matrix: | |
| python-version: ['3.12'] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Set up dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install cython pytest wheel lxml numpy scipy | |
| - name: Build extension | |
| run: | | |
| python -m pip install -v . | |
| - name: Run tests | |
| run: pytest | |
| macos-14: | |
| runs-on: macos-14 | |
| if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name | |
| strategy: | |
| matrix: | |
| python-version: ['3.12'] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Set up dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install cython pytest wheel lxml numpy scipy | |
| - name: Build extension | |
| run: | | |
| python -m pip install -v . | |
| - name: Run tests | |
| run: pytest | |
| windows: | |
| runs-on: windows-latest | |
| if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name | |
| strategy: | |
| matrix: | |
| python-version: ['3.12'] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Set up dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install cython pytest wheel lxml numpy scipy | |
| - name: Build extension | |
| run: | | |
| python -m pip install -v . | |
| - name: Run tests | |
| run: pytest |