Add GitHub Actions for Release Automation#2
Open
nutcas3 wants to merge 5 commits into
Open
Conversation
…tic version bumping
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Added GitHub Actions workflows to automate the release and tagging process for TypedMemory with semantic versioning support.
New Files
.github/workflows/create-tag.yml- Manual workflow to create and push git tags.github/workflows/auto-tag.yml- Automated semantic versioning workflow.github/workflows/release.yml- Enhanced release workflow with prerelease detectionWorkflow Details
Auto Tag Workflow (New)
Create Tag Workflow (Enhanced)
version: Tag name (e.g., v0.2.0)prerelease: Boolean flag to mark as prereleaseRelease Workflow
How to Use
Automatic Semantic Versioning (Recommended)
Use conventional commits in your commit messages:
When you push to main, the auto-tag workflow will:
Manual Tag Creation
If you need to create a specific version tag manually:
The workflow will:
Manual Release (Without Tag)
If you need to create a release without creating a tag first:
The workflow will:
Label/Comment Trigger
To trigger a release via label or comment:
Via Label:
Via Comment:
Manual Auto-Tag with Force Bump
To manually trigger the auto-tag workflow with a specific version bump:
The workflow will:
Alternative: Local Tag Creation
You can also create tags locally:
git tag -a v0.2.0 -m "Release v0.2.0" git push origin v0.2.0This will trigger the release workflow automatically. Note: You'll need to manually update pom.xml with the new version.
Prerelease Naming Convention
To mark a release as a prerelease, include any of these in the tag name:
The release workflow will automatically detect these and mark the release as a prerelease.
Benefits