Add Release Drafter configuration and workflow#457
Add Release Drafter configuration and workflow#457rahulharpal1603 merged 5 commits intoAOSSIE-Org:mainfrom
Conversation
Introduces a Release Drafter config file and GitHub Actions workflow to automate release note generation and drafting on pushes to main and closed pull requests.
|
""" WalkthroughTwo new files are introduced: a Release Drafter configuration and a GitHub Actions workflow. The configuration file specifies templates and categories for automated release notes, while the workflow triggers on main branch pushes and closed pull requests to update the release draft using the defined configuration. Additionally, the existing build-and-release workflow is modified to trigger on release publishing and to use the release tag dynamically without drafting the release. Changes
Sequence Diagram(s)sequenceDiagram
participant GitHub
participant UpdateReleaseDraftWorkflow
participant ReleaseDrafter
GitHub->>UpdateReleaseDraftWorkflow: Push to main or PR closed
UpdateReleaseDraftWorkflow->>UpdateReleaseDraftWorkflow: Checkout repository
UpdateReleaseDraftWorkflow->>ReleaseDrafter: Run Release Drafter with config
ReleaseDrafter->>GitHub: Update draft release notes
Assessment against linked issues
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
.github/release-drafter-config.yml (1)
28-30: Add trailing newline to satisfy YAML lintingYAML files should end with a single newline to avoid tooling warnings (
new-line-at-end-of-file).
Add an empty line after$CONTRIBUTORS.-$CONTRIBUTORS +\$CONTRIBUTORS +.github/workflows/update-release-drafter.yml (1)
18-18: Consider bumping Release Drafter action to the latest major
release-drafter/release-drafter@v6is the current major and receives fixes & features.
Switching keeps the workflow future-proof.- uses: release-drafter/release-drafter@v5 + uses: release-drafter/release-drafter@v6
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
.github/release-drafter-config.yml(1 hunks).github/workflows/update-release-drafter.yml(1 hunks)
🧰 Additional context used
🪛 YAMLlint (1.37.1)
.github/release-drafter-config.yml
[error] 30-30: no new line character at the end of file
(new-line-at-end-of-file)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Tauri Tests
Including .github/ before release-drafter-config.yml in config-name, causes a file not found error. stack: 'Error: Configuration file .github/.github/release-drafter-config.yml is not found. The suggestion by coderabbitai seems to be incorrect.
|
Hi @rohan-pandeyy, as we discussed in the Discord server, our build-and-release workflow should also be modified. |
|
Thanks for pointing this out @rahulharpal1603, I'll commit the changes ASAP. |
Alright, this is what it looks like after all the changes - The tag template follows this naming convention: vMAJOR.MINOR.PATCH - The name of the Release will be: PictoPy vMAJOR.MINOR.PATCH - The Tauri Action will automatically be trigger when Publish Release is pressed. - The artifacts will be attached to the current draft (made by Release Drafter) The overall thing is: PR merged > Draft updated > Manual Publish of the release > Auto build-and-release upload
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.github/release-drafter-config.yml (1)
28-30: Add missing trailing newline to satisfy YAMLlint & editorsYAMLlint is reporting “no new line character at the end of file”.
A terminal newline is required by POSIX tools and prevents noisy diffs when the next line is appended.- $CONTRIBUTORS + $CONTRIBUTORS +
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
.github/release-drafter-config.yml(1 hunks).github/workflows/build-and-release.yml(2 hunks)
🧰 Additional context used
🪛 YAMLlint (1.37.1)
.github/release-drafter-config.yml
[error] 30-30: no new line character at the end of file
(new-line-at-end-of-file)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Tauri Tests
🔇 Additional comments (1)
.github/workflows/build-and-release.yml (1)
3-4: Confirm this trigger is what you want – it fires after a release is published
release: types: [published]only runs once the draft is manually published (or auto-published) on GitHub.
If you intend to upload the build artifacts to the draft generated by Release Drafter, usetypes: [released]orcreated/editedinstead. Otherwise the workflow runs too late and may force an extra release cycle.
Increased fault tolerance in case of a manual triggers.
|
Thank you @rohan-pandeyy for the contribution! |
Fixes #455
Introduces a Release Drafter config file and GitHub Actions workflow to automate release note generation and drafting on pushes to main and closed pull requests.
Changes:
.github/release-drafter-config.yml(Configuration for the Release Drafter bot).github/workflows/update-release-drafter.yml(GitHub Actions workflow that runs the Release Drafter bot on PR merge / push to main)Test:
The example PR under "Features" was labeled

enhancementorUI.Similarly for "Bug Fixes" & "Documentation"; label was
buganddocumentationrespectively.All the PRs under "Others" had none of the above mentioned labels.
Changelog config goes like:
$TITLE (#$NUMBER) by @$AUTHORSummary by CodeRabbit