Skip to content

Add GoReleaser configuration and update main.go for versioning#2

Merged
Jimzical merged 4 commits into
mainfrom
chore/setup-goreleasermain
Jan 3, 2026
Merged

Add GoReleaser configuration and update main.go for versioning#2
Jimzical merged 4 commits into
mainfrom
chore/setup-goreleasermain

Conversation

@Jimzical

@Jimzical Jimzical commented Jan 3, 2026

Copy link
Copy Markdown
Owner

This pull request introduces automated release tooling for the project, making it easier to build and distribute binaries across multiple platforms. The main improvements are the addition of a GitHub Actions workflow for releases, a GoReleaser configuration for building and packaging, and embedding build metadata into the binary.

Release automation and packaging:

  • Added a .github/workflows/release.yml GitHub Actions workflow to automatically trigger releases on version tag pushes, using GoReleaser to build and publish binaries for Linux, Windows, and macOS.
  • Introduced a .goreleaser.yaml configuration to build statically-linked binaries for multiple OS/architectures, archive them appropriately (tar.gz for Unix, zip for Windows), and generate checksums and changelogs.

Build metadata embedding:

  • Updated main.go to include version, commit, and date variables, which are set during the build process and logged at startup, providing traceability for released binaries.… versioning

Copilot AI review requested due to automatic review settings January 3, 2026 15:49

Copilot AI 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.

Pull request overview

This pull request adds automated release tooling to the vizdisk project, enabling cross-platform binary distribution through GoReleaser and GitHub Actions. The changes introduce build metadata embedding to track version information in released binaries.

  • Added GoReleaser configuration for building binaries across Linux, Windows, and macOS (amd64 and arm64)
  • Created GitHub Actions workflow to automatically trigger releases on version tags
  • Embedded version, commit, and build date variables in main.go that are populated during the build process

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
.github/workflows/release.yml Defines GitHub Actions workflow that triggers on version tags, sets up Go environment, and runs GoReleaser to build and publish releases
.goreleaser.yaml Configures GoReleaser to build static binaries for multiple platforms with embedded version metadata, and package them as archives with checksums
main.go Adds version, commit, and date variables with default values, and logs this build information at application startup

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/release.yml
Comment thread main.go
@Jimzical Jimzical merged commit 0199866 into main Jan 3, 2026
3 checks passed
@Jimzical Jimzical deleted the chore/setup-goreleasermain branch January 3, 2026 16:12
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