Add ability to release via go-releaser
This MR adds the ability to make releases via goreleaser
. The idea and initial config file is courtesy of @marais.vanzyl. The reasons to use goreleaser
are twofold:
- We'll switch to using our own generic package repo instead of an S3 bucket somewhere in AWS land.
- This will (eventually) simplify the CI configuration since
goreleaser
will automatically handle much of what is currently in the CI configuration (building binaries, pushing them to the package registry, creating a release entry)
FOR NOW I will continue to push releases to the existing S3 bucket, but after a few releases via goreleaser
we should remove that.
The trigger to make a release is as it was before; pushing a new tag.
Using this to make releases for previous version requires the following:
- merging this MR into the stable branch for the previous release
- bumping the patch version
- pushing the tag for the patch version
I've already tried this manually and it works.
I'll also have to update the docs so all download links and instructions point to this project's package repo (and backport that to all previous releases too).
To test a release do goreleaser release
. You'll only be able to do this if you have a GITLAB_TOKEN
. Be sure to delete the release entry after (including all artifacts).