Skip to content

feat: Implement automated release workflow using GitHub Actions - #828

Merged
PRODHOSH merged 2 commits into
PRODHOSH:mainfrom
rohitkumarnaidu:issue-824-release-workflow
Aug 7, 2026
Merged

feat: Implement automated release workflow using GitHub Actions#828
PRODHOSH merged 2 commits into
PRODHOSH:mainfrom
rohitkumarnaidu:issue-824-release-workflow

Conversation

@rohitkumarnaidu

@rohitkumarnaidu rohitkumarnaidu commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Fixes #824

Summary by CodeRabbit

  • New Features

    • Added an automated release workflow triggered by version tags.
    • Releases are created only after successful dependency installation, linting, type checks, tests, and builds.
  • Documentation

    • Added guidance for the release process, including required permissions and instructions for creating semantic-versioned tags.

Copilot AI lite review requested due to automatic review settings August 6, 2026 17:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Warning

Review limit reached

@rohitkumarnaidu, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 46 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: aeeb7f7d-0d02-4369-8b26-943f4eff5114

📥 Commits

Reviewing files that changed from the base of the PR and between aad45d3 and 5282396.

📒 Files selected for processing (2)
  • .github/workflows/release.yml
  • docs/RELEASE_WORKFLOW.md
📝 Walkthrough

Walkthrough

The pull request adds a tag-triggered GitHub Actions release workflow. It validates the project with linting, type checks, tests, and a build before publishing a GitHub release. Documentation describes the workflow, permissions, job isolation, and release commands.

Changes

Release automation

Layer / File(s) Summary
Tagged release validation
.github/workflows/release.yml
The workflow runs on v* tags. A read-only job installs dependencies, runs linting, type checks, unit tests, and the application build.
Release publication and operating guide
.github/workflows/release.yml, docs/RELEASE_WORKFLOW.md
A dependent job creates a non-draft, non-prerelease GitHub release with generated notes. The documentation describes the workflow and release commands.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Sequence Diagram(s)

sequenceDiagram
  participant GitHub
  participant build_and_test
  participant release_job
  participant GitHub_Releases
  GitHub->>build_and_test: Trigger on v* tag
  build_and_test->>build_and_test: Install, lint, type-check, test, and build
  build_and_test-->>release_job: Report successful validation
  release_job->>GitHub_Releases: Publish release with generated notes
Loading

Suggested labels: documentation

Suggested reviewers: prodhosh, copilot

Poem

A rabbit checks the tagged release line,
Runs tests and builds until they shine.
With notes prepared and permissions tight,
The release hops into GitHub’s light.
Ears up—automation is right!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main change: an automated GitHub Actions release workflow.
Linked Issues check ✅ Passed The workflow automates tag-triggered releases and builds artifacts, which satisfies the coding objectives in issue #824.
Out of Scope Changes check ✅ Passed The workflow and related documentation directly support automated releases and contain no unrelated changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 5

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/release.yml:
- Around line 3-6: Add a read-only validation step in the release workflow
before the job or step granting release contents: write permission, validating
that github.ref_name is a semantic version tag and matches the version in
package.json. Replace the broad v* trigger with an appropriate version-tag
pattern where possible, while retaining runtime validation to reject malformed
or mismatched tags before release proceeds.
- Around line 20-23: Update every uses reference in the workflow, including
actions/checkout, actions/setup-node, and softprops/action-gh-release, to a
verified full-length commit SHA instead of a mutable version tag. Preserve each
original version as a trailing comment on the same reference.
- Around line 19-20: Update both actions/checkout@v4 steps in the release
workflow to set persist-credentials to false, preventing the workflow token from
being stored in git configuration while preserving the existing checkout
behavior.
- Around line 3-8: Add a workflow-level concurrency configuration near the
existing on trigger in the release workflow, using github.ref as the group key
and enabling cancellation of in-progress runs. Keep the push.tags trigger
unchanged while ensuring duplicate or superseded runs for the same tag cannot
continue publishing.

In `@docs/RELEASE_WORKFLOW.md`:
- Around line 60-63: Update the command block in RELEASE_WORKFLOW.md by adding a
blank line immediately before the opening fence and immediately after the
closing fence, satisfying markdownlint MD031 without changing the commands.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: e17ff4a3-595c-4bdd-8521-bc7054053b16

📥 Commits

Reviewing files that changed from the base of the PR and between 65abbf4 and aad45d3.

📒 Files selected for processing (2)
  • .github/workflows/release.yml
  • docs/RELEASE_WORKFLOW.md

Comment thread .github/workflows/release.yml Outdated
Comment thread .github/workflows/release.yml
Comment thread .github/workflows/release.yml Outdated
Comment thread .github/workflows/release.yml Outdated
Comment thread docs/RELEASE_WORKFLOW.md
@github-actions github-actions Bot added the documentation Additions to docs label Aug 6, 2026
@PRODHOSH PRODHOSH added ELUSOC ELUSOC project submission completed ADVENTURER Intermediate 25 pts github-actions CI/CD and Workflows labels Aug 7, 2026
@PRODHOSH
PRODHOSH merged commit f99c7c4 into PRODHOSH:main Aug 7, 2026
5 of 10 checks passed
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

🎉 Your PR just got merged, @rohitkumarnaidu — thank you for contributing to OSSfolio!

Your work is now part of the project. Here's what to do next:

  • ⭐ If you haven't already, consider giving the repo a star — it helps us grow.
  • 📢 Share your contribution on LinkedIn, Twitter, or wherever you hang out. You shipped open source!
  • 🔍 Browse other open issues if you want to keep contributing.

We really appreciate you taking the time. See you in the next PR! 🚀

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

Labels

ADVENTURER Intermediate 25 pts completed documentation Additions to docs ELUSOC ELUSOC project submission github-actions CI/CD and Workflows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Implement automated release workflow using GitHub Actions

3 participants