Skip to content

chore: harden CLV release workflow#23

Merged
CroaBeast merged 4 commits intomasterfrom
croabeast
May 7, 2026
Merged

chore: harden CLV release workflow#23
CroaBeast merged 4 commits intomasterfrom
croabeast

Conversation

@CroaBeast
Copy link
Copy Markdown
Collaborator

Summary

  • track local CLV build libraries required by Gradle
  • add GitHub Actions workflow to build and upload CLV artifacts
  • add release workflow to generate prereleases and release notes from version commits
  • harden CLV release artifact lookup
  • improve release tag detection before recreating prereleases
  • make version bump commit lookup more reliable during release note generation

Commits

  • chore: track CLV build libraries
  • chore: add CLV build and release workflows
  • chore: harden CLV release workflow

@review-me-code
Copy link
Copy Markdown

review-me-code Bot commented May 6, 2026

Pull request overview

Adds CI/CD workflows for building and releasing CyberLevels. The build workflow compiles with Gradle and uploads artifacts, while the release workflow creates prereleases with auto-generated notes. Also tracks local build dependencies in git.

Changes:

  • build.yml: New workflow triggered on push/PR to master, builds with Gradle 21, uploads versioned JAR artifact
  • release.yml: New workflow triggered after successful builds, downloads artifacts, generates release notes from git history and GitHub API, creates prerelease
  • gitignore: Adds exceptions for libraries/*.jar to track local build dependencies
  • libraries/: Adds 3 JAR files (CyberCore, RivalHarvesterHoesAPI, RivalPickaxesAPI) as tracked dependencies

Reviewed changes

  • Medium - Potential race condition with concurrent releases
    The concurrency group cyberlevels-release-${{ github.event.workflow_run.head_branch }} with cancel-in-progress: false allows multiple runs for the same branch to queue up. If there are multiple pushes to master in quick succession, you could end up with multiple release workflows running for different build runs, potentially creating conflicting releases. Consider using workflow_run ID in the concurrency group instead of branch name, or add logic to skip older queued runs.
  • Low - Hardcoded version bump commit pattern
    Line 86 looks for chore: bump version to $VERSION to determine the changelog range. If version bumps use different formats or are missed, the fallback to previous release tags is solid, but this could be fragile in repos with inconsistent commit messages.
  • Low - No verification of artifact integrity
    The release workflow downloads and uses the JAR without verifying checksums or signatures. For production releases, consider adding checksum verification or GPG signing.

Reviewed 6 changed files in this pull request and generated no inline comments.


Generated by pull_request.opened.

Copy link
Copy Markdown
Collaborator

@Klema4 Klema4 left a comment

Choose a reason for hiding this comment

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

Pls pls pls

Comment thread .github/workflows/build.yml Outdated
@Klema4 Klema4 self-requested a review May 7, 2026 06:18
Copy link
Copy Markdown
Collaborator

@Klema4 Klema4 left a comment

Choose a reason for hiding this comment

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

It's cool

@CroaBeast CroaBeast requested a review from Klema4 May 7, 2026 06:18
@CroaBeast CroaBeast merged commit 9c0dc5f into master May 7, 2026
1 check failed
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.

2 participants