Skip to content

Merge pull request #29 from relativityspace-jsmith/windows-fixes-and-… #163

Merge pull request #29 from relativityspace-jsmith/windows-fixes-and-…

Merge pull request #29 from relativityspace-jsmith/windows-fixes-and-… #163

Workflow file for this run

name: CI
on:
push:
branches:
- dev
- master
pull_request:
branches:
- dev
jobs:
lint-check:
name: Run pre-commit
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- uses: pre-commit/[email protected]
linux:
name: Build Linux wheels
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: messense/maturin-action@v1
with:
manylinux: 2_17
target: x86_64
command: build
args: --release --sdist -o dist
- uses: actions/setup-python@v4
with:
python-version: |
3.7
3.8
3.9
3.10
3.11
- name: Test wheels
run: |
pip install nox
nox
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels
path: dist
linux-cross:
name: Build Linux wheels
runs-on: ubuntu-20.04
strategy:
matrix:
target: [i686, s390x, ppc64, ppc64le, aarch64, armv7l]
steps:
- uses: actions/checkout@v3
- uses: messense/maturin-action@v1
with:
manylinux: 2_17
target: ${{ matrix.target }}
command: build
args: --release -o dist
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels
path: dist
linux-musl:
name: Build Linux musl wheels
runs-on: ubuntu-latest
strategy:
matrix:
target: [x86_64, aarch64, i686, armv7l]
steps:
- uses: actions/checkout@v3
- uses: messense/maturin-action@v1
with:
manylinux: musllinux_1_1
target: ${{ matrix.target }}
command: build
args: --release -o dist
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels
path: dist
linux-legacy:
name: Build Linux legacy wheels
runs-on: ubuntu-20.04
strategy:
matrix:
target: [x86_64, s390x, ppc64le, aarch64]
steps:
- uses: actions/checkout@v3
# TODO: Figure out a smarter way to do this
- run: sed -e "s/requires-python = \">=3.7\"/requires-python = \">=3.6\"/g" -i pyproject.toml
- run: sed -e "s/, \"abi3-py37\"//g" -i Cargo.toml
- run: sed -e "s/0.17.1/0.15.2/g" -i Cargo.toml
- uses: messense/maturin-action@v1
with:
maturin-version: v0.12.20
manylinux: 2_17
target: ${{ matrix.target }}
command: build
args: --release -o dist -i python3.6
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels
path: dist
windows:
name: Build Windows wheels
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: messense/maturin-action@v1
with:
command: build
args: --release -o dist
- uses: actions/setup-python@v4
with:
python-version: |
3.7
3.8
3.9
3.10
3.11
- name: Test wheels
run: |
pip install nox
nox
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels
path: dist
macos:
name: Build MacOS wheels
runs-on: macos-12
steps:
- uses: actions/checkout@v3
- uses: messense/maturin-action@v1
with:
command: build
args: --release -o dist
- uses: actions/setup-python@v4
with:
python-version: |
3.7
3.8
3.9
3.10
3.11
- name: Test wheels
run: |
pip install nox
nox
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels
path: dist
release:
needs: [ lint-check, macos, windows, linux, linux-cross, linux-musl ]
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/master'
steps:
- uses: actions/download-artifact@v3
with:
name: wheels
path: dist
- uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}