Skip to content

do not explicitly request arm64 in mac workflow #210

do not explicitly request arm64 in mac workflow

do not explicitly request arm64 in mac workflow #210

Workflow file for this run

name: Deploy
on: push
jobs:
build_wheels_mac_ubuntu:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
# macos-13 is an intel runner
os: [ubuntu-latest, macos-13]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- name: Install build tools
run: python -m pip install --upgrade pip setuptools==75.3.0
- name: Build wheels
uses: pypa/[email protected]
env:
CIBW_SKIP: '*-musllinux_*'
- uses: actions/upload-artifact@v4
with:
name: cibw-wheels-${{ matrix.os }}
path: ./wheelhouse/*.whl
build_wheels_mac_arm64:
name: Build wheels on macos-14
runs-on: macos-14 # apple silicon
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- name: Install build tools
run: python -m pip install --upgrade pip setuptools==75.3.0
- name: Build wheels
uses: pypa/[email protected]
- uses: actions/upload-artifact@v4
with:
name: cibw-wheels-macos-14
path: ./wheelhouse/*.whl
build_wheels_windows:
name: Build wheels on windows-latest
runs-on: windows-latest
env:
CC: cl
CXX: cl
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- name: Install build tools
run: python -m pip install --upgrade pip setuptools==75.3.0
- uses: ilammy/msvc-dev-cmd@v1
- name: Build wheels
uses: pypa/[email protected]
env:
CIBW_BUILD: cp38-win_amd64
- uses: actions/upload-artifact@v4
with:
name: cibw-wheels-windows-latest
path: ./wheelhouse/*.whl
run-tox-test:
name: Test wheels on mac and linux
needs: [build_wheels_mac_ubuntu, build_wheels_mac_arm64]
runs-on: ${{ matrix.version.os }}
strategy:
matrix:
version:
- {os: ubuntu-latest, python: '3.10'}
- {os: macOS-13, python: '3.10'}
- {os: macOS-14, python: '3.12'}
steps:
- name: Clone repository
uses: actions/checkout@v4
- uses: actions/download-artifact@master
with:
name: cibw-wheels-${{ matrix.version.os }}
path: dist
- name: Install Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.version.python }}
- name: Install dependencies
run: |
pip3 install tox
- name: Run basic test
run: |
cd misc/
PIP_FIND_LINKS='${{ github.workspace }}/dist' tox -e unified-planning
run-tox-test-windows:
name: Test wheels on windows
needs: [build_wheels_windows]
runs-on: ${{ matrix.version.os }}
strategy:
matrix:
version:
- {os: windows-2019, python: '3.8'}
- {os: windows-2022, python: '3.10'}
steps:
- name: Clone repository
uses: actions/checkout@v4
- uses: actions/download-artifact@master
with:
name: cibw-wheels-windows-latest
path: dist
- name: Install Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.version.python }}
- name: Install dependencies
run: |
pip3 install tox
- name: Run basic test
run: |
cd misc/
$env:PIP_FIND_LINKS='${{ github.workspace }}\dist'; tox -e unified-planning
deploy-pypi:
runs-on: ubuntu-latest
needs: [run-tox-test, run-tox-test-windows]
if: github.ref == 'refs/heads/main' # We only deploy on master commits
steps:
- uses: actions/download-artifact@master
with:
name: cibw-wheels-ubuntu-latest
path: dist
- uses: actions/download-artifact@master
with:
name: cibw-wheels-windows-latest
path: dist
- uses: actions/download-artifact@master
with:
name: cibw-wheels-macos-13
path: dist
- run: ls dist
- name: Upload to PyPI
uses: pypa/gh-action-pypi-publish@master
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}