Skip to content

deploy-wheels

deploy-wheels #29

Workflow file for this run

name: deploy-wheels
on:
release:
types: [released]
jobs:
deploy:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: ["ubuntu-20.04", "windows-2019", "macos-14", "macos-latest"]
steps:
- uses: actions/checkout@v4
- name: Setup rust toolchain
uses: ./.github/actions/rust-toolchain
with:
toolchain: 1.75.0
components: rustfmt clippy
- name: Set up Python 3.10
uses: actions/setup-python@v3
with:
python-version: "3.10"
if: ${{ matrix.os != 'macos-14' && matrix.os != 'macos-latest' }}
- name: Install LLVM
uses: ./.github/actions/install-llvm
with:
version: "14"
os: ${{ matrix.os }}
directory: ${{ github.workspace }}/target/llvm
target: "pypi-build"
- name: "Run build script"
run: |
pwd
./build.ps1 -t "pypi-build"
shell: pwsh
- name: Artifacts - manylinux
uses: actions/upload-artifact@v4
with:
name: rasqal-manylinux-artifacts
path: src/target/wheels/*manylinux_2_*.whl
if: ${{ matrix.os == 'ubuntu-20.04' }}
- name: Artifacts
uses: actions/upload-artifact@v4
with:
name: rasqal-${{ matrix.os }}-artifacts
path: src/target/wheels/*
if: ${{ matrix.os != 'ubuntu-20.04' }}
publish:
runs-on: ubuntu-latest
needs: [ deploy ]
permissions:
id-token: write
steps:
- uses: actions/download-artifact@v4
with:
pattern: rasqal-*
merge-multiple: true
path: dist/
- name: Publish to PyPi
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: dist/