Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Oct 12, 2025

Problem

The current CI setup uses release-plz which creates manual PRs for version bumps (like #8), requiring manual review and merging. This creates unnecessary overhead and clutters the git history with bot-generated PRs.

Solution

This PR migrates the release workflow to use the same fully automated semantic-release pattern as Casbin-RS, eliminating manual PR creation entirely.

Changes

  • Replaced .github/workflows/release.yml to use casbin-rs/semantic-release-action-rust reusable workflow
  • Removed the release-plz-pr job that was creating unwanted PRs
  • Removed the release-plz-release job
  • Now uses semantic-release for 100% automated releases based on conventional commits

How It Works

  1. Developer pushes commits to master using conventional commit format (feat:, fix:, chore:, etc.)
  2. CI workflow runs tests and checks
  3. After CI passes, the Auto Release workflow automatically:
    • Analyzes commit messages
    • Determines the next version number (major/minor/patch)
    • Generates changelog
    • Creates git tags
    • Publishes to crates.io

No manual intervention or PR approvals needed!

Benefits

  • ✅ No more manual PR creation - fully automated releases
  • ✅ Consistent release process across all casbin-rs repositories
  • ✅ Cleaner git history without bot-created PRs
  • ✅ Semantic versioning handled automatically
  • ✅ Reduces maintenance overhead

Example

# Developer commits with conventional commit format
git commit -m "feat: add new feature"      # → triggers minor version bump
git commit -m "fix: resolve bug"           # → triggers patch version bump
git commit -m "feat!: breaking change"     # → triggers major version bump

# After CI passes, semantic-release automatically:
# - Updates version in Cargo.toml
# - Generates CHANGELOG.md
# - Creates git tag
# - Publishes to crates.io

Resolves the issue mentioned in the original request about eliminating useless PRs like #8.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/casbin-rs/semantic-release-action-rust/tags
    • Triggering command: curl -s REDACTED (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>[ci] migrate to 100% fully automated semantic-release like Casbin-RS</issue_title>
<issue_description>The CI in this repo is not good, it still generates useless PRs like: #8

Need to migrate to the CI solution of 100% fully automated semantic-release like CasbinRS: https://github.com/casbin/casbin-rs</issue_description>

Comments on the Issue (you are @copilot in this section)

Fixes #9


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Copilot AI and others added 2 commits October 12, 2025 07:16
Co-authored-by: hsluoyz <3787410+hsluoyz@users.noreply.github.com>
Co-authored-by: hsluoyz <3787410+hsluoyz@users.noreply.github.com>
Copilot AI changed the title [WIP] Migrate CI to fully automated semantic-release solution feat: migrate to 100% automated semantic-release like Casbin-RS Oct 12, 2025
Copilot AI requested a review from hsluoyz October 12, 2025 07:22
Copilot finished work on behalf of hsluoyz October 12, 2025 07:22
@hsluoyz hsluoyz marked this pull request as ready for review October 12, 2025 07:26
@hsluoyz hsluoyz merged commit 2979c2d into master Oct 12, 2025
21 of 22 checks passed
github-actions bot pushed a commit that referenced this pull request Oct 12, 2025
# [0.2.0](v0.1.0...v0.2.0) (2025-10-12)

### Features

* improve README badges ([#7](#7)) ([b8966a8](b8966a8))
* migrate to 100% automated semantic-release like Casbin-RS ([#10](#10)) ([2979c2d](2979c2d))
@github-actions
Copy link

🎉 This PR is included in version 0.2.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ci] migrate to 100% fully automated semantic-release like Casbin-RS

3 participants