Skip to content

feat(ci): enrich Discord release notifications - #528

Merged
lklynet merged 1 commit into
mainfrom
feature/feat/discord-notifications
Aug 4, 2026
Merged

feat(ci): enrich Discord release notifications#528
lklynet merged 1 commit into
mainfrom
feature/feat/discord-notifications

Conversation

@lklynet

@lklynet lklynet commented Aug 4, 2026

Copy link
Copy Markdown
Owner

Summary

Improve Discord notifications for releases, nightly builds, and preview images with release notes, pull requests, linked issues, and pull request summaries. Add GitHub API access and multiline workflow outputs to support richer notification content.

Linked issues

None

Validation

  • CI passes
  • Tested using the ghcr.io/lklynet/aurral:pr-<number> preview image, or not required
  • Upgrade, migration, and rollback notes are updated where applicable

Test plan

  • Affected area(s): CI workflows, release notifications, preview notifications
  • Automated coverage: Existing workflow and shell-script validation
  • Manual steps and expected result: Trigger or inspect release, nightly, and first-preview workflows; verify Discord embeds include the expected summaries, pull requests, linked issues, release notes, and truncated fields.

Release impact

  • Major: incompatible change
  • Minor: backward-compatible feature
  • Patch: backward-compatible fix
  • None: documentation, CI, tests, or internal-only change

Summary by CodeRabbit

  • New Features

    • Added Discord notifications for release, nightly build, and preview deployment events.
    • Notifications now include release notes, change lists, pull requests, linked issues, versions, and deployment details.
    • Nightly release-readiness updates provide richer pull-request and issue information.
    • Preview notifications are sent when a new preview comment is created.
  • Bug Fixes

    • Improved notification formatting with bounded descriptions and lists for clearer delivery.
    • Improved release-readiness issue handling to prevent duplicate pinning and ensure completed issues are unpinned.

@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 2f3fbd4b-44d9-4210-9bea-07f9fb827d53

📥 Commits

Reviewing files that changed from the base of the PR and between 642ab8d and 39c6ec9.

📒 Files selected for processing (6)
  • .github/workflows/nightly.yml
  • .github/workflows/preview.yml
  • .github/workflows/reconcile-release.yml
  • .github/workflows/release.yml
  • scripts/notify-discord.sh
  • scripts/update-release-readiness.sh
🚧 Files skipped from review as they are similar to previous changes (3)
  • .github/workflows/reconcile-release.yml
  • .github/workflows/preview.yml
  • .github/workflows/nightly.yml

📝 Walkthrough

Walkthrough

The Discord notification script now collects and formats bounded release notes, pull requests, linked issues, and preview summaries. Release, nightly, reconciliation, and first-preview workflow steps pass the required metadata and credentials. Release-readiness processing exports nightly lists through multiline GitHub Actions outputs.


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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

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 243-249: The release notification flow uses the wrong commit when
resolving release changes. In .github/workflows/release.yml lines 243-249, add
HEAD_SHA to the Notify Discord releases channel step environment using the
commit associated with needs.compute-release.outputs.tag; in
scripts/notify-discord.sh lines 230-236, replace the empty-HEAD_SHA fallback to
GITHUB_SHA with gh api against release_tag and use the returned .sha value.

In `@scripts/notify-discord.sh`:
- Around line 222-229: Replace the head-based truncation in
scripts/notify-discord.sh lines 222-229 with a sed expression that limits output
to 20 lines without closing an upstream pipe. In scripts/notify-discord.sh lines
167-187, replace the head-based 8-line limit with sed-based termination and
replace the printf-to-grep summary check with a Bash pattern match; update both
sites to avoid early-exit pipelines under pipefail.
- Around line 326-335: Update the Discord webhook request around the http_code
capture to create a unique response-file path with mktemp instead of the fixed
/tmp path, and pass that path to curl and the subsequent cat. Add an explicit
curl timeout so a stalled Discord endpoint cannot block the job indefinitely,
while preserving the existing HTTP status validation and error reporting.

In `@scripts/update-release-readiness.sh`:
- Around line 83-107: Update pin_issue and unpin_issue so non-idempotent GitHub
CLI failures are reported to stderr but do not return a failure status, allowing
the job to continue under set -e. Preserve the existing success handling and
already-pinned/not-pinned checks, and apply the same continuation behavior to
both helpers.
- Around line 71-81: Update write_output_multiline to generate a unique random
heredoc delimiter for each output instead of using the fixed AURRAL_EOF value,
and use that delimiter consistently for both the opening and closing markers.
Ensure pull_list and issue_list content cannot prematurely terminate the heredoc
or inject additional GitHub outputs.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 6be7005c-17c0-4d97-a5c6-b9d04c407e90

📥 Commits

Reviewing files that changed from the base of the PR and between b0caee2 and 642ab8d.

📒 Files selected for processing (6)
  • .github/workflows/nightly.yml
  • .github/workflows/preview.yml
  • .github/workflows/reconcile-release.yml
  • .github/workflows/release.yml
  • scripts/notify-discord.sh
  • scripts/update-release-readiness.sh

Comment thread .github/workflows/release.yml
Comment thread scripts/notify-discord.sh
Comment thread scripts/notify-discord.sh
Comment thread scripts/update-release-readiness.sh
Comment thread scripts/update-release-readiness.sh
- Include release notes, pull requests, and linked issues
- Add change summaries to nightly and preview notifications
@lklynet
lklynet force-pushed the feature/feat/discord-notifications branch from 642ab8d to 39c6ec9 Compare August 4, 2026 00:32
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

Aurral preview image ready

This image was rebuilt from the latest push to this pull request. It will be replaced when you push another change.

docker pull ghcr.io/lklynet/aurral:pr-528

To test it with your existing Docker Compose setup:

  1. Back up your Aurral config.
  2. Temporarily change the Aurral service image to ghcr.io/lklynet/aurral:pr-528.
  3. Run docker compose pull aurral && docker compose up -d aurral.
  4. Exercise the behavior changed by this pull request.
  5. Restore the image reference that was configured before testing.

View the preview workflow run · Report a problem

@lklynet

lklynet commented Aug 4, 2026

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@lklynet
lklynet merged commit 7942707 into main Aug 4, 2026
5 checks passed
@lklynet
lklynet deleted the feature/feat/discord-notifications branch August 4, 2026 00:42
@github-actions github-actions Bot mentioned this pull request Aug 4, 2026
5 tasks
@github-actions github-actions Bot added the nightly Available in the nightly image but not yet in a stable release. label Aug 4, 2026
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

Included in stable release 2.1.0

This change is included in the Aurral 2.1.0 release.

docker pull ghcr.io/lklynet/aurral:2.1.0

View the release

@github-actions github-actions Bot added released Included in a stable release. and removed nightly Available in the nightly image but not yet in a stable release. labels Aug 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

released Included in a stable release.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant