Skip to content

GoReleaser

What

GoReleaser builds Go binaries for several platforms. The goal is to simplify the build, release and publish steps while providing variant customization options for all steps.

Why

Simplifies the build and packing process of your app's Go binaries.

How

The entire release process can be customized through a .goreleaser.yml file. Once you set it up, every time you want to create a new release, all you need to do is create a git tag that conforms to semantic versioning and run goreleaser release.

CI setup

Summary

No configuration required.

GoReleaser is configured to run on the main branch and is executed via the release Github workflow in .github/workflows/release.yml.

Info

Binaries are only created if a tag exists. This is controlled via semantic-release.

Local setup

The quickstart provides detailed steps to run GoReleaser locally.