Skip to content

add CI steps to build go assets for mac and linux, add install script, and document install steps #2

add CI steps to build go assets for mac and linux, add install script, and document install steps

add CI steps to build go assets for mac and linux, add install script, and document install steps #2

Workflow file for this run

name: Python Wheels
on:
push:
branches:
- go_assets
pull_request:
jobs:
manylinux2014:
runs-on: ${{ matrix.runner }}
container: ${{ matrix.container }}
strategy:
matrix:
name: [ubuntu-latest, ubuntu-arm-latest]
include:
- name: ubuntu-latest
python: 3.11
os: ubuntu-latest
release-os: manylinux2014
release-arch: x86_64
container: quay.io/pypa/manylinux2014_x86_64
runner: [ubuntu-latest]
- name: ubuntu-arm-latest
python: 3.11
os: ubuntu-latest
release-os: manylinux2014
release-arch: aarch64
container: quay.io/pypa/manylinux2014_aarch64
runner: [self-hosted, linux, ARM64]
steps:
- uses: actions/checkout@v3
- name: Install stable rust
run: curl --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal
- name: Install maturin & uniffi-bindgen
run: |
/opt/python/cp311-cp311/bin/pip install maturin uniffi-bindgen
- name: Build wheel
run: |
source $HOME/.cargo/env
PATH=/opt/python/cp311-cp311/bin:$PATH
export PATH
maturin build --release --manylinux 2014
- name: Upload wheel
uses: actions/upload-artifact@v3
with:
name: wheels-${{ matrix.release-os }}-${{ matrix.release-arch }}
path: target/wheels/*.whl
osx:
runs-on: ${{ matrix.runner }}
strategy:
matrix:
name: [macOS-latest, macOS-arm-latest]
include:
- name: macOS-latest
python: 3.11
os: macOS-latest
release-os: darwin
release-arch: x86_64
runner: [macOS-latest]
- name: macOS-arm-latest
python: 3.11
os: macOS-latest
release-os: darwin
release-arch: aarch64
runner: [self-hosted, macOS, ARM64]
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
- name: Install maturin & uniffi-bindgen
run: |
pip install maturin uniffi-bindgen
- name: Build wheel
run: |
maturin build --release
- name: Upload wheel
uses: actions/upload-artifact@v3
with:
name: wheels-${{ matrix.release-os }}-${{ matrix.release-arch }}
path: target/wheels/*.whl
windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install maturin & uniffi-bindgen
run: |
pip install maturin uniffi-bindgen
- name: Build wheel
run: |
maturin build --release
- name: Upload wheel
uses: actions/upload-artifact@v3
with:
name: wheels-windows-x86_64
path: target/wheels/*.whl