Skip to content

2.21

2.21 #49

Workflow file for this run

name: Build Python packages
on:
release:
types: [published]
workflow_dispatch:
jobs:
libinchi:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, macos-latest, ubuntu-24.04, ubuntu-24.04-arm]
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Set up CMake
uses: lukka/get-cmake@latest
- name: Build libinchi
run: python build_inchi.py
- name: Upload libinchi artifact
uses: actions/upload-artifact@v4
with:
name: libinchi-${{ matrix.os }}
path: chython/files/libinchi/libinchi.*
if-no-files-found: error
binary:
needs: libinchi
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, macos-latest, ubuntu-24.04, ubuntu-24.04-arm]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Download libinchi artifact
uses: actions/download-artifact@v4
with:
name: libinchi-${{ matrix.os }}
path: chython/files/libinchi/
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip poetry twine
- name: Build wheel
run: |
poetry build -f wheel
- name: Publish package
run: |
twine upload -u __token__ -p ${{ secrets.PYPI_API_TOKEN }} --non-interactive --skip-existing dist/*