Files
deezspot-spotizerr-dev/.github/workflows/publish-to-pypi.yml
Xoconoch 61096e82e5 1.3.0
2025-06-03 14:05:41 -06:00

58 lines
1.6 KiB
YAML

name: Publish Python Package to PyPI
on:
release:
types: [published]
jobs:
build-and-publish:
name: Build and publish Python package to PyPI
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: "3.x"
- name: Update version in files
run: |
TAG_VERSION="${{ github.ref_name }}"
# Remove 'v' prefix if it exists
VERSION="${TAG_VERSION#v}"
echo "Using version: $VERSION"
# Update pyproject.toml
sed -i "s/^version = .*/version = \"${VERSION}\"/" pyproject.toml
# Update setup.py
sed -i "s/^\s*version = .*/ version = \"${VERSION}\",/" setup.py
echo "pyproject.toml version:"
grep "^version = " pyproject.toml
echo "setup.py version:"
grep "^\s*version = " setup.py
- name: Install pypa/build
run: >-
python -m
pip install
build
--user
- name: Build a binary wheel and a source tarball
run: >-
python -m
build
--sdist
--wheel
--outdir dist/
.
- name: Publish package to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
# You may want to publish to a test PyPI repository first
# repository_url: https://test.pypi.org/legacy/
# package_name: deezspot-spotizerr # Ensure this matches your package name if needed explicitly