Skip to content

PyPi packaging

PyPi packaging #736

Workflow file for this run

on:
release:
types: [published]
schedule:
- cron: '0 1 * * *'
workflow_dispatch:
name: PyPi packaging
jobs:
build:
strategy:
matrix:
include:
- name: manylinux-x86_64
os: ubuntu-latest
config: production --auto-download
cache-key: cvc5-pypi
- name: macos-x86_64
os: macos-11
config: production --auto-download
cache-key: cvc5-pypi
platform: macosx_11_0_x86_64
- name: macos-arm64
os: macos-11
config: production --auto-download --arm64
cache-key: cvc5-pypi-arm64
platform: macosx_11_0_arm64
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
if: (github.repository == 'cvc5/cvc5') || (github.event_name != 'schedule')
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install dependencies
uses: ./.github/actions/install-dependencies
if: runner.os == 'Linux'
with:
with-documentation: false
with-python-bindings: false
with-python-packaging: true
- name: Install dependencies
uses: ./.github/actions/install-dependencies
if: runner.os == 'macOS'
with:
with-documentation: false
with-python-bindings: true
with-python-packaging: true
- name: Setup caches
uses: ./.github/actions/setup-cache
with:
cache-key: ${{ matrix.cache-key }}
- name: Package PyPi wheel packages
uses: ./.github/actions/package-python-wheel
with:
upload-to-pypi: ${{ github.event_name == 'release' }}
upload-to-test-pypi: false
test-pypi-token: ${{ secrets.PYPI_TOKEN }}
pypi-token: ${{ secrets.PYPI_TOKEN }}
config: ${{ matrix.config }}
platform: ${{ matrix.platform }}