Skip to content

Merge pull request #23 from nullStack65/release-please--branches--rel… #28

Merge pull request #23 from nullStack65/release-please--branches--rel…

Merge pull request #23 from nullStack65/release-please--branches--rel… #28

# Release Please - automated releases from conventional commits
# Runs on push to releases branch
name: Release Please
on:
push:
branches: [releases]
permissions:
contents: write
pull-requests: write
id-token: write # Required for PyPI trusted publishing
jobs:
release-please:
name: Release Please
runs-on: ubuntu-latest
outputs:
release_created: ${{ steps.release.outputs.release_created }}
tag_name: ${{ steps.release.outputs.tag_name }}
version: ${{ steps.release.outputs.version }}
steps:
- uses: googleapis/release-please-action@v4
id: release
with:
release-type: python
target-branch: releases
build:
name: Build Package
needs: release-please
if: ${{ needs.release-please.outputs.release_created }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.11"
- name: Install build tools
run: pip install build twine
- name: Build package
run: python -m build
- name: Check package
run: twine check dist/*
- name: Upload build artifacts
uses: actions/upload-artifact@v6
with:
name: dist
path: dist/
publish:
name: Publish to PyPI
needs: [release-please, build]
if: ${{ needs.release-please.outputs.release_created }}
runs-on: ubuntu-latest
environment: pypi
permissions:
id-token: write
steps:
- name: Download build artifacts
uses: actions/download-artifact@v7
with:
name: dist
path: dist/
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1