Skip to content

Commit

Permalink
Publish to test.pypi.org
Browse files Browse the repository at this point in the history
  • Loading branch information
seanmcl committed Feb 11, 2025
1 parent 8c78aab commit 92eca35
Showing 1 changed file with 82 additions and 0 deletions.
82 changes: 82 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,85 @@ jobs:
with:
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
path: ./.wheel/wheelhouse/*.whl
if-no-files-found: error

# Mostly followed guides here:
# - https://github.com/pypa/gh-action-pypi-publish?tab=readme-ov-file
# - https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
# NB: I needed to set the trusted publisher to repo NKL, not KLR, since that was its original name. Scary detail! No idea how I'd figure that out without knowing the original name.
publish-to-testpypi:
name: Publish Python 🐍 distribution 📦 to TestPyPI
needs:
- build
runs-on: ubuntu-latest

environment:
name: testpypi

permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing

steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
# name: python-package-distributions
# # unpacks all CIBW artifacts into dist/
# pattern: cibw-*
path: dist/
merge-multiple: true

- name: List the wheels
run: |
ls -1 dist/
# Example output:
# klr-0.0.3-cp310-cp310-macosx_99_0_arm64.whl
# klr-0.0.3-cp310-cp310-macosx_99_0_x86_64.whl
# klr-0.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
# klr-0.0.3-cp311-cp311-macosx_99_0_arm64.whl
# klr-0.0.3-cp311-cp311-macosx_99_0_x86_64.whl
# klr-0.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
# klr-0.0.3-cp312-cp312-macosx_99_0_arm64.whl
# klr-0.0.3-cp312-cp312-macosx_99_0_x86_64.whl
# klr-0.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
# klr-0.0.3-cp313-cp313-macosx_99_0_arm64.whl
# klr-0.0.3-cp313-cp313-macosx_99_0_x86_64.whl
# klr-0.0.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
# klr-0.0.3-cp38-cp38-macosx_99_0_arm64.whl
# klr-0.0.3-cp38-cp38-macosx_99_0_x86_64.whl
# klr-0.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
# klr-0.0.3-cp39-cp39-macosx_99_0_arm64.whl
# klr-0.0.3-cp39-cp39-macosx_99_0_x86_64.whl
# klr-0.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

- name: Rename OSX wheels
# pypi can't handle the 99.0 version tags. We need to move those back to versions it is OK with
# This should be OK; we only bumped the version because Lake required it, and OSX is
# backward compatible so we can run older versions on newer machines.
run: |
echo "Renaming x86 wheels"
suffix=macosx_99_0_x86_64
for file in *; do
if [[ "$file" == *"$suffix"* ]]; then
newname=$(echo "$file" | sed "s/$suffix/macosx_13_0_x86_64/g")
mv $file $newname
echo "Renamed: $file -> $newname"
fi
done
echo "Renaming ARM wheels"
suffix=macosx_99_0_arm64
for file in *; do
if [[ "$file" == *"$suffix"* ]]; then
newname=$(echo "$file" | sed "s/$suffix/macosx_14_0_arm64/g")
mv $file $newname
echo "Renamed: $file -> $newname"
fi
done
- name: Publish distribution 📦 to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/
verbose: true

0 comments on commit 92eca35

Please sign in to comment.