Bring the prod release action script in line with the working test release.

This commit is contained in:
Josh W 2024-09-06 13:36:13 -04:00
parent 33a330641f
commit 6fa95fd45d

View file

@ -22,7 +22,7 @@ jobs:
- name: Setup Python - name: Setup Python
uses: actions/setup-python@v5 uses: actions/setup-python@v5
with: with:
python-version: '3.8' python-version: '3.12'
- name: Install dependencies - name: Install dependencies
run: | run: |
python -m pip install build twine python -m pip install build twine
@ -32,6 +32,7 @@ jobs:
- name: Put SDist in artifact container - name: Put SDist in artifact container
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: cibw-sdist
path: dist/*.tar.gz path: dist/*.tar.gz
- name: Check SDist metadata - name: Check SDist metadata
run: | run: |
@ -42,33 +43,18 @@ jobs:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
strategy: strategy:
matrix: matrix:
os: [ubuntu-latest, windows-latest, macos-latest] os: [ubuntu-latest, windows-latest, macos-13, macos-14]
bitness: [32, 64]
python: ["3.8", "3.9", "3.10", "3.11", "3.12"] python: ["3.8", "3.9", "3.10", "3.11", "3.12"]
include:
- os: windows-latest
bitness: 64
platform_id: win_amd64
- os: windows-latest
bitness: 32
platform_id: win32
- os: ubuntu-latest
bitness: 64
platform_id: manylinux_x86_64
- os: ubuntu-latest
bitness: 32
platform_id: manylinux_i686
- os: macos-latest
bitness: 64
platform_id: macosx_x86_64
exclude:
- os: macos-latest
bitness: 32
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive
- name: Set up QEMU on Linux images
if: runner.os == 'Linux'
uses: docker/setup-qemu-action@v3
with:
platforms: all
- name: Get Python Version Name - name: Get Python Version Name
uses: mad9000/actions-find-and-replace-string@5 uses: mad9000/actions-find-and-replace-string@5
id: pythonversion id: pythonversion
@ -76,27 +62,36 @@ jobs:
source: ${{ matrix.python }} source: ${{ matrix.python }}
find: '.' find: '.'
replace: '' replace: ''
- name: "Install Python 3.8 universal2 on macOS arm64"
if: runner.os == 'macOS' && runner.arch == 'arm64'
uses: actions/setup-python@v5
env:
PIP_DISABLE_PIP_VERSION_CHECK: 1
with:
python-version: 3.8
- name: Build wheels - name: Build wheels
uses: joerick/cibuildwheel@v2.20.0 uses: joerick/cibuildwheel@v2.20.0
env: env:
CIBW_BUILD: cp${{ steps.pythonversion.outputs.value }}-${{ matrix.platform_id }} CIBW_BUILD: "cp${{ steps.pythonversion.outputs.value }}-*"
CIBW_ENVIRONMENT: "SETUPTOOLS_SCM_PRETEND_VERSION=${{ github.event.inputs.overrideVersion }}" CIBW_ENVIRONMENT: "SETUPTOOLS_SCM_PRETEND_VERSION=${{ github.event.inputs.overrideVersion }}"
- name: Upload wheels to artifact container - name: Upload wheels to artifact container
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
path: wheelhouse/*.whl path: wheelhouse/*.whl
upload_all: upload_all:
needs: [build_wheels, make_sdist] needs: [build_wheels, make_sdist]
runs-on: ubuntu-latest runs-on: ubuntu-latest
environment: release
permissions:
id-token: write
steps: steps:
- name: Get SDist and wheels from artifact container - name: Get SDist and wheels from artifact container
uses: actions/download-artifact@v4 uses: actions/download-artifact@v4
with: with:
name: artifact pattern: cibw-*
path: dist path: dist
- name: Publish wheels to Test PyPI merge-multiple: true
uses: pypa/gh-action-pypi-publish@v1.10.1 - name: Publish wheels to PyPI
with: uses: pypa/gh-action-pypi-publish@release/v1
user: ${{ secrets.PYPI_USERNAME }}
password: ${{ secrets.PYPI_PASSWORD }}