Skip to content

Update publish-to-pypi.yml #137

Update publish-to-pypi.yml

Update publish-to-pypi.yml #137

name: Publish Python 🐍 distribution 📦 to PyPI
on: push
jobs:
build:
name: Build distribution 📦
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/') # only publish to PyPI on tag pushes^
steps:
- name: Checkout Repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
with:
fetch-depth: 0
- name: Update Version Number
run: |
OLD_VERSION=$(grep ^version pyproject.toml | cut -d '"' -f 2)
OLD_VERSION="\"$OLD_VERSION\""
echo $OLD_VERSION
TAG_NAME=${{ github.ref_name }}
NEW_VERSION="\"${TAG_NAME:1}\""
echo $NEW_VERSION
sed -i "s+version = $OLD_VERSION+version = $NEW_VERSION+g" pyproject.toml
- name: Commit Changes
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "[email protected]"
git commit -a -m "Update version number to new version"
git push origin HEAD:main
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install pypa/build
run: >-
python3 -m
pip install
build
--user
- name: Build a binary wheel and a source tarball
run: python3 -m build
- name: Store the distribution packages
uses: actions/upload-artifact@v4
with:
name: python-package-distributions
path: dist/
publish-to-pypi:
name: >-
Publish Python 🐍 distribution 📦 to PyPI
if: startsWith(github.ref, 'refs/tags/') # only publish to PyPI on tag pushes
needs:
- build
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/p/zen-temple/
permissions:
id-token: write
steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
name: python-package-distributions
path: dist/
- name: Publish distribution 📦 to PyPI
uses: pypa/gh-action-pypi-publish@release/v1