Add x86 and armv7 for Linux #33
Workflow file for this run
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 is autogenerated by maturin v1.3.2 | |
# To update, run | |
# | |
# maturin generate-ci github --platform linux | |
# | |
name: Linux Python CI | |
on: | |
push: | |
branches: | |
- master | |
tags: | |
- '*' | |
pull_request: | |
workflow_dispatch: | |
permissions: | |
contents: read | |
jobs: | |
linux: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
target: [armv7] | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
- name: Setup QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
target: armv7 | |
- name: Build wheels | |
uses: PyO3/maturin-action@v1 | |
with: | |
target: ${{ matrix.target }} | |
args: --release --out dist --find-interpreter | |
sccache: 'false' # TODO: sccache is broken on 2_28 | |
docker-options: -e PKG_CONFIG_SYSROOT_DIR=/usr/armv7-unknown-linux-gnueabihf/armv7-unknown-linux-gnueabihf/sysroot/ -e PKG_CONFIG_DIR="" -e PKG_CONFIG_LIBDIR=/usr/armv7-unknown-linux-gnueabihf/armv7-unknown-linux-gnueabihf/sysroot/usr/lib/pkgconfig:/usr/armv7-unknown-linux-gnueabihf/armv7-unknown-linux-gnueabihf/sysroot//usr/share/pkgconfig -e PKG_CONFIG_ALLOW_CROSS=1 | |
# before-script-linux: yum install -y dbus-devel libudev-devel pkgconfig protobuf-devel protobuf-compiler && yum -y clean all | |
before-script-linux: apt update && sudo apt install -y cargo libudev-dev protobuf-compiler libdbus-1-dev pkg-config | |
manylinux: 2_28 | |
- name: Test the wheel | |
run: | | |
pip install yaroc --find-links dist --force-reinstall | |
pip install pytest | |
pytest | |
- name: Lint with ruff | |
run: | | |
pip install ruff | |
ruff check . --select=E9,F63,F7,F82 --statistics | |
ruff check . --exit-zero --statistics | |
- name: Upload wheels | |
uses: actions/upload-artifact@v3 | |
with: | |
name: wheels | |
path: dist | |
sdist: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Build sdist | |
uses: PyO3/maturin-action@v1 | |
with: | |
command: sdist | |
args: --out dist | |
- name: Upload sdist | |
uses: actions/upload-artifact@v3 | |
with: | |
name: wheels | |
path: dist | |
release: | |
name: Release | |
runs-on: ubuntu-latest | |
if: "startsWith(github.ref, 'refs/tags/')" | |
needs: [linux, sdist] | |
steps: | |
- uses: actions/download-artifact@v3 | |
with: | |
name: wheels | |
- name: Publish to PyPI | |
uses: PyO3/maturin-action@v1 | |
env: | |
MATURIN_PYPI_TOKEN: ${{ secrets.TEST_PYPI_API_TOKEN }} | |
MATURIN_REPOSITORY: testpypi | |
with: | |
command: upload | |
args: --non-interactive --skip-existing *whl |