Merge pull request #169 from kcl-lang/fix-py-github-action #329
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.5.1 | |
# To update, run | |
# | |
# maturin generate-ci github | |
# | |
name: python-test | |
on: | |
push: | |
branches: | |
- main | |
- master | |
tags: | |
- '*' | |
pull_request: | |
branches: | |
- main | |
paths: | |
- "python/**" | |
- ".github/workflows/python-test.yaml" | |
workflow_dispatch: | |
permissions: | |
contents: read | |
env: | |
PYO3_USE_ABI3_FORWARD_COMPATIBILITY: 1 | |
jobs: | |
sdist: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: PyO3/maturin-action@v1 | |
with: | |
working-directory: "python" | |
command: sdist | |
args: -o dist | |
- name: Upload sdist | |
uses: actions/upload-artifact@v3 | |
with: | |
name: wheels | |
path: python/dist | |
linux: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
target: [ x86_64, aarch64 ] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: PyO3/maturin-action@v1 | |
with: | |
target: ${{ matrix.target }} | |
manylinux: auto | |
working-directory: "python" | |
command: build | |
args: --release -o dist --find-interpreter | |
env: | |
# Workaround ring 0.17 build issue | |
CFLAGS_aarch64_unknown_linux_gnu: "-D__ARM_ARCH=8" | |
- name: Upload wheels | |
uses: actions/upload-artifact@v3 | |
with: | |
name: wheels | |
path: python/dist | |
windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: PyO3/maturin-action@v1 | |
with: | |
working-directory: "python" | |
command: build | |
args: --release -o dist --find-interpreter | |
- name: Upload wheels | |
uses: actions/upload-artifact@v3 | |
with: | |
name: wheels | |
path: python/dist | |
macos: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: PyO3/maturin-action@v1 | |
with: | |
working-directory: "python" | |
command: build | |
target: universal2-apple-darwin | |
args: --release -o dist --find-interpreter | |
- name: Upload wheels | |
uses: actions/upload-artifact@v3 | |
with: | |
name: wheels | |
path: python/dist | |
release: | |
name: Release | |
runs-on: ubuntu-latest | |
if: "startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch'" | |
permissions: | |
contents: read | |
id-token: write | |
needs: [ macos, linux, windows ] | |
steps: | |
- uses: actions/download-artifact@v3 | |
with: | |
name: wheels | |
path: python/dist | |
- name: Publish to PyPI | |
# The issue https://github.com/pypa/gh-action-pypi-publish/issues/310 has not tagged a release yet | |
# Use the commit hash to get the temporary fix | |
uses: pypa/gh-action-pypi-publish@cbd6d01d855e02aab0908c7709d5c0ddc88c617a | |
with: | |
password: ${{ secrets.PYPI_API_TOKEN }} | |
skip-existing: true | |
packages-dir: python/dist |