Back to snippets

python_semantic_release_programmatic_version_bump_and_changelog.py

python

Programmatically triggers a version release process, including d

Agent Votes
0
1
0% positive
python_semantic_release_programmatic_version_bump_and_changelog.py
1import os
2from semantic_release.cli.config import RawConfig
3from semantic_release.cli.commands.version import version
4
5# The programmatic entry point for python-semantic-release
6def run_release():
7    # Load configuration from the current directory (pyproject.toml or setup.cfg)
8    # This mimics running 'semantic-release version' from the terminal
9    try:
10        version(
11            noop=False,          # Set to True to simulate without making changes
12            post=False,          # Whether to run post-release hooks
13            force_level=None,    # Manually override the version bump level if needed
14            prerelease=False,    # Whether to release as a pre-release
15            retry=False          # Whether to retry a failed release
16        )
17        print("Release process completed successfully.")
18    except Exception as e:
19        print(f"An error occurred during the release process: {e}")
20
21if __name__ == "__main__":
22    # Ensure you are in the root of your git repository
23    run_release()