Skip to content

Add automated release workflow#14

Merged
kompre merged 5 commits into
mainfrom
dev
Oct 21, 2025
Merged

Add automated release workflow#14
kompre merged 5 commits into
mainfrom
dev

Conversation

@kompre
Copy link
Copy Markdown
Owner

@kompre kompre commented Oct 21, 2025

Summary

Implement label-driven release automation with version bumping:

  • Version Bump Workflow (version-bump.yml)

    • Triggers when bump labels are added to PRs
    • Applies multiple version bumps in single uv version command
    • Commits changes back to PR branch
    • Posts version change comment
    • Acts as required status check
  • Release Workflow (release.yml)

    • Triggers on merged PRs with release/test-release labels
    • Builds and tests package
    • Publishes to PyPI or TestPyPI based on label
    • Creates git tag matching version
    • Creates GitHub Release
  • Documentation

    • Added .github/RELEASE.md with complete release process guide
    • Updated CLAUDE.md with release workflow section
  • Cleanup

    • Removed deprecated python-publish.yml workflow

Changes

Testing Plan

  1. Test version bump workflow by adding bump labels to this PR
  2. Configure GitHub Environments (pypi, testpypi)
  3. Configure PyPI Trusted Publishing
  4. Test release to TestPyPI
  5. Configure branch protection rules
  6. Production release to PyPI

Related

🤖 Generated with Claude Code

The check-release-label job needs to checkout the repository before
running gh pr view command, otherwise it fails with 'not a git repository'.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@kompre kompre added bump:rc Version bump: rc test-release Publish package to TestPyPI labels Oct 21, 2025
@github-actions
Copy link
Copy Markdown
Contributor

✅ Version bumped: 2025.9.0rc12025.9.0rc2

kompre and others added 3 commits October 21, 2025 10:03
Prevents version bump commits from triggering the test workflow.
Tests already ran on the PR's actual code changes, so re-running
them after a version-only change is unnecessary.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Track version bump and release workflow fixes that were merged.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Performance improvements:
- Add explicit uv cache configuration to all workflows
- Enable cache with uv.lock as dependency glob
- Reduces dependency installation time on cache hit

Cleanup:
- Remove quarto-cli from dev dependencies
- Already using quarto-dev/quarto-actions/setup in workflows
- Eliminates redundant 100+ package dependency tree

Applied to: test.yml, version-bump.yml, release.yml

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@kompre kompre merged commit 7b5e8be into main Oct 21, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bump:rc Version bump: rc test-release Publish package to TestPyPI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant