Release Workflow

This GitHub Actions workflow automates releases on pushes to main.

Job

Runs on Ubuntu with permissions for repository, packages, pull requests, issues, deployments, and ID tokens.

Steps

  1. Checkout: Fetches full repository history.
  2. Python Setup: Configures Python 3.10.
  3. Dependencies: Upgrades pip, installs requirements, and adds wheel.
  4. Git Config: Sets user to harper-release-bot.
  5. Semantic Release: Versions, pushes, tags, updates changelog, and creates release using HARPER_RELEASE_BOT_TOKEN.
  6. Changelog Enhancement: Runs script to improve changelog.

Ensures semantic versioning for automated release management.

See Harper Release Bot and repository for details.