https://github.com/matteo4diani/poetry-semantic-release
This repo hosts semantic-poetry: a composite GitHub Action to release simple Python packages on GitHub and PyPI following semantic versioning and conventional commits. https://github.com/matteo4diani/poetry-semantic-release/tree/main
https://github.com/matteo4diani/poetry-semantic-release
ci ci-cd conventional-commits github github-actions github-ci poetry poetry-python pypi pypi-package python python-semantic-release semantic-poetry semantic-release semantic-versioning semver
Last synced: about 1 year ago
JSON representation
This repo hosts semantic-poetry: a composite GitHub Action to release simple Python packages on GitHub and PyPI following semantic versioning and conventional commits. https://github.com/matteo4diani/poetry-semantic-release/tree/main
- Host: GitHub
- URL: https://github.com/matteo4diani/poetry-semantic-release
- Owner: matteo4diani
- License: mit
- Created: 2023-08-13T17:36:42.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-08-13T21:12:20.000Z (almost 3 years ago)
- Last Synced: 2025-03-29T09:11:37.926Z (about 1 year ago)
- Topics: ci, ci-cd, conventional-commits, github, github-actions, github-ci, poetry, poetry-python, pypi, pypi-package, python, python-semantic-release, semantic-poetry, semantic-release, semantic-versioning, semver
- Homepage: https://github.com/marketplace/actions/semantic-poetry
- Size: 21.5 KB
- Stars: 14
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README


# semantic-poetry 🪶
[semantic-poetry](https://github.com/marketplace/actions/semantic-poetry) is a GitHub Action that automates the release of [poetry](https://python-poetry.org/)-based Python packages on GitHub and PyPI following [semantic versioning](https://semver.org) and [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/#summary) standards.
## Usage
To use it in your CI:
1. Generate a PyPI Token from PyPI: https://pypi.org/help/#apitoken
2. Set your PyPI Token as a repository secret named `PYPI_TOKEN`: https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository
3. For a quick start copy the `[tool.semantic_release]` section of this [pyproject.toml](https://github.com/matteo4diani/poetry-semantic-release-test/blob/main/pyproject.toml) and adjust it to your needs.
4. For advanced semantic-release configurations: https://python-semantic-release.readthedocs.io/en/latest/configuration.html#configuration
Happy hacking 😼
## Tests
Test runs can be found at https://github.com/matteo4diani/poetry-semantic-release-test/actions, which is a sample poetry-based Python project used to test this action.
## Tools
This action uses [poetry](https://python-poetry.org/) and [python-semantic-release](https://python-semantic-release.readthedocs.io/en/latest/index.html).