Skip to content

👷 Add GitHub Action for Release#3

Open
rickyheijnen wants to merge 1 commit intomainfrom
config/add-release-workflow
Open

👷 Add GitHub Action for Release#3
rickyheijnen wants to merge 1 commit intomainfrom
config/add-release-workflow

Conversation

@rickyheijnen
Copy link
Copy Markdown
Member

📝 Beschrijving

This PR adds a Github Action workflow for creating a tag release on every push to the main branch.

✅ Checklist

  • Code is tested

@rickyheijnen rickyheijnen self-assigned this Sep 27, 2025
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Sep 27, 2025

Warning

Rate limit exceeded

@rickyheijnen has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 9 minutes and 41 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 9d3904f and 41f9e1f.

📒 Files selected for processing (1)
  • .github/workflows/release.yml (1 hunks)

Walkthrough

Adds a GitHub Actions workflow (.github/workflows/release.yml) that derives a version from composer.json, normalizes it to a v-prefixed tag, checks origin for the tag, and conditionally creates/pushes the tag and a GitHub Release; runs on pushes to main and manual dispatch.

Changes

Cohort / File(s) Summary of edits
CI: Release tagging workflow
.github/workflows/release.yml
Added workflow "Tag Release": checks out full history, fetches tags, reads version from composer.json, normalizes to a v-prefixed tag, verifies tag existence on origin, creates and pushes the tag if missing, and creates a GitHub Release with autogenerated notes. Fails if composer.json lacks a version. Triggers: push to main and workflow_dispatch.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The title succinctly summarizes the core change by indicating that a GitHub Action workflow for releases is added. It directly reflects the main change in the pull request. The phrasing is clear and concise, making it easy for a teammate to understand the purpose at a glance.
Description Check ✅ Passed The description clearly states that a GitHub Action workflow for tag releases is being added on pushes to the main branch and includes a relevant checklist indicating testing coverage. It directly relates to the changeset by describing the core functionality introduced. Thus, the description is on-topic and informative enough for a basic understanding.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.

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

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
.github/workflows/release.yml (1)

67-69: Limit git config scope to the repository

Using git config --global on a (likely persistent) self-hosted runner leaks these bot credentials into every job that reuses the machine. Please scope the identity to the checkout so we don’t mutate runner state between pipelines.

-          git config --global user.email "github-actions[bot]@users.noreply.github.com"
-          git config --global user.name "github-actions[bot]"
+          git config user.email "github-actions[bot]@users.noreply.github.com"
+          git config user.name "github-actions[bot]"
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8a01abf and 9d3904f.

📒 Files selected for processing (1)
  • .github/workflows/release.yml (1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.7)
.github/workflows/release.yml

18-18: label "brixion-runners" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

@rickyheijnen rickyheijnen force-pushed the config/add-release-workflow branch from 9d3904f to a70ae79 Compare September 27, 2025 20:13
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9d3904f and a70ae79.

📒 Files selected for processing (1)
  • .github/workflows/release.yml (1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.7)
.github/workflows/release.yml

94-94: input "allow_updates" is not defined in action "softprops/action-gh-release@v2". available inputs are "append_body", "body", "body_path", "discussion_category_name", "draft", "fail_on_unmatched_files", "files", "generate_release_notes", "make_latest", "name", "prerelease", "preserve_order", "repository", "tag_name", "target_commitish", "token"

(action)

Comment on lines +87 to +95
- name: Create GitHub Release (autogenerated notes)
if: steps.release.outputs.exists == 'false'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ steps.version.outputs.tag }}
name: Version ${{ steps.version.outputs.tag }}
generate_release_notes: true
allow_updates: true
env:
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Remove unsupported allow_updates input

softprops/action-gh-release@v2 does not define an allow_updates input, so this step will fail at runtime with “Unexpected input 'allow_updates'” and the release will never be created.(github.com) Remove that key (the action already updates existing releases automatically) to keep the workflow green.

       generate_release_notes: true
-      allow_updates: true
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- name: Create GitHub Release (autogenerated notes)
if: steps.release.outputs.exists == 'false'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ steps.version.outputs.tag }}
name: Version ${{ steps.version.outputs.tag }}
generate_release_notes: true
allow_updates: true
env:
- name: Create GitHub Release (autogenerated notes)
if: steps.release.outputs.exists == 'false'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ steps.version.outputs.tag }}
name: Version ${{ steps.version.outputs.tag }}
generate_release_notes: true
env:
🧰 Tools
🪛 actionlint (1.7.7)

94-94: input "allow_updates" is not defined in action "softprops/action-gh-release@v2". available inputs are "append_body", "body", "body_path", "discussion_category_name", "draft", "fail_on_unmatched_files", "files", "generate_release_notes", "make_latest", "name", "prerelease", "preserve_order", "repository", "tag_name", "target_commitish", "token"

(action)

🤖 Prompt for AI Agents
In .github/workflows/release.yml around lines 87 to 95, remove the unsupported
allow_updates input from the softprops/action-gh-release@v2 step — delete the
allow_updates: true line so the action uses its built-in release update
behavior; keep the other inputs (tag_name, name, generate_release_notes)
unchanged and commit the change to prevent the “Unexpected input
'allow_updates'” runtime error.

@rickyheijnen rickyheijnen force-pushed the config/add-release-workflow branch 2 times, most recently from 654a37c to fe7868c Compare September 27, 2025 20:52
@rickyheijnen rickyheijnen force-pushed the main branch 2 times, most recently from 4e8364b to 289d8aa Compare September 27, 2025 21:39
@rickyheijnen rickyheijnen force-pushed the config/add-release-workflow branch from fe7868c to 41f9e1f Compare September 27, 2025 21:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant