forked from Pyomo/pyomo
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update tests to include 3.12; update wheel builder workflow
- Loading branch information
Showing
3 changed files
with
34 additions
and
114 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,49 +18,33 @@ env: | |
PYOMO_SETUP_ARGS: --with-distributable-extensions | ||
|
||
jobs: | ||
manylinux: | ||
name: ${{ matrix.TARGET }}/${{ matrix.wheel-version }}_wheel_creation | ||
bdist_wheel: | ||
name: Build wheels (3.8+) on ${{ matrix.os }} for ${{ matrix.arch }} | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
wheel-version: ['cp38-cp38', 'cp39-cp39', 'cp310-cp310', 'cp311-cp311'] | ||
os: [ubuntu-latest] | ||
os: [ubuntu-20.04, windows-latest, macos-latest] | ||
arch: [auto] | ||
include: | ||
- os: ubuntu-latest | ||
TARGET: manylinux | ||
python-version: [3.8] | ||
- os: ubuntu-20.04 | ||
arch: aarch64 | ||
- os: macos-latest | ||
arch: arm64 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v3 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install twine wheel setuptools pybind11 | ||
# TODO: Update the manylinux builder to next tagged release | ||
- name: Build manylinux Python wheels | ||
uses: RalfG/python-wheels-manylinux-build@a1e012c58ed3960f81b7ed2759a037fb0ad28e2d | ||
with: | ||
python-versions: ${{ matrix.wheel-version }} | ||
build-requirements: 'cython pybind11' | ||
package-path: '' | ||
pip-wheel-args: '' | ||
# When locally testing, --no-deps flag is necessary (PyUtilib dependency will trigger an error otherwise) | ||
- name: Consolidate wheels | ||
run: | | ||
sudo test -d dist || mkdir -v dist | ||
sudo find . -name \*.whl | grep -v /dist/ | xargs -n1 -i mv -v "{}" dist/ | ||
- name: Delete linux wheels | ||
run: | | ||
sudo rm -rfv dist/*-linux_x86_64.whl | ||
- name: Upload artifact | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: manylinux-wheels | ||
path: dist | ||
- uses: actions/checkout@v4 | ||
- name: Build wheels | ||
uses: pypa/[email protected] | ||
with: | ||
output-dir: dist | ||
env: | ||
WRAPT_INSTALL_EXTENSIONS: true | ||
CIBW_SKIP: "pp* cp36* cp37*" | ||
CIBW_BUILD_VERBOSITY: 1 | ||
CIBW_ARCHS: ${{ matrix.arch }} | ||
- uses: actions/upload-artifact@v3 | ||
with: | ||
name: wheels | ||
path: dist/*.whl | ||
|
||
generictarball: | ||
name: ${{ matrix.TARGET }} | ||
|
@@ -74,9 +58,9 @@ jobs: | |
TARGET: generic_tarball | ||
python-version: [3.8] | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v3 | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install dependencies | ||
|
@@ -92,67 +76,3 @@ jobs: | |
name: generictarball | ||
path: dist | ||
|
||
osx: | ||
name: ${{ matrix.TARGET }}py${{ matrix.python-version }}/wheel_creation | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [macos-latest] | ||
include: | ||
- os: macos-latest | ||
TARGET: osx | ||
python-version: [ 3.8, 3.9, '3.10', '3.11' ] | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v3 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install twine wheel setuptools cython pybind11 | ||
- name: Build OSX Python wheels | ||
run: | | ||
python setup.py --with-cython --with-distributable-extensions sdist --format=gztar bdist_wheel | ||
- name: Upload artifact | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: osx-wheels | ||
path: dist | ||
|
||
windows: | ||
name: ${{ matrix.TARGET }}py${{ matrix.python-version }}/wheel_creation | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [windows-latest] | ||
include: | ||
- os: windows-latest | ||
TARGET: win | ||
python-version: [ 3.8, 3.9, '3.10', '3.11' ] | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v3 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install dependencies | ||
shell: pwsh | ||
run: | | ||
$env:PYTHONWARNINGS="ignore::UserWarning" | ||
Invoke-Expression "python -m pip install --upgrade pip" | ||
Invoke-Expression "pip install setuptools twine wheel cython pybind11" | ||
- name: Build Windows Python wheels | ||
shell: pwsh | ||
run: | | ||
$env:PYTHONWARNINGS="ignore::UserWarning" | ||
Invoke-Expression "python setup.py --with-cython --with-distributable-extensions sdist --format=gztar bdist_wheel" | ||
- name: Upload artifact | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: win-wheels | ||
path: dist |
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 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