Skip to content

Add nightly release workflow#484

Open
cschleiden wants to merge 1 commit into
mainfrom
cschleiden/nightly-release-flow
Open

Add nightly release workflow#484
cschleiden wants to merge 1 commit into
mainfrom
cschleiden/nightly-release-flow

Conversation

@cschleiden
Copy link
Copy Markdown
Owner

@cschleiden cschleiden commented May 30, 2026

Adds a nightly release workflow so the repository can publish Go-consumable prerelease tags only when main has moved since the last release point. This avoids creating empty nightly releases while still making fresh merged changes easy to consume through normal Go module versioning.

Summary

  • Adds a scheduled and manually runnable nightly release workflow.
  • Detects releasable changes by fetching full tag history and comparing HEAD against the latest prior release point: the latest nightly prerelease tag when present, otherwise the latest stable v* tag.
  • Skips publishing when no commits have landed since that release point, unless the manual force input is set.
  • Publishes semver-compatible prerelease tags like v1.4.2-nightly.202605300506.1, so consumers can use go get with the nightly version.
  • Validates the revision before publishing and creates a non-latest GitHub prerelease with generated notes anchored to the previous tag.

Notes

The workflow uses timestamped prerelease tags plus the GitHub run number to avoid same-day tag collisions from reruns or manual dispatches. It also sets contents: write, fetches tags explicitly, and serializes release runs with a concurrency group to reduce release automation races.

Validation

  • Parsed the workflow YAML locally.
  • Simulated the release detection logic against the current repository tags and confirmed it selects the next nightly prerelease line and detects commits since v1.4.1.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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