This pull request changes how we build and package summon-conjur. I've implemented goreleaser, a tool that lets you use a .goreleaser.yml file to specify how to build and package your go app.
Using goreleaser comes with some nice benefits, like:
consistent build and package environment, declarative yaml configuration
goreleaser can also automatically create github releases and upload artifacts to them, but I opted out of that in the config file for this project. I think having the homebrew file in CI artifacts makes it easy to add to homebrew-tools. Having the tarballs and shasums makes it easy to upload to github releases.
This is the first test of goreleaser. I think this was a good experience and we should consider adopting this tool for other go projects. We could build and push a image to dockerhub so multiple projects can use it easily.
I will follow this merge up with adding summon-conjur to homebrew repo.
This pull request changes how we build and package summon-conjur. I've implemented goreleaser, a tool that lets you use a
.goreleaser.yml
file to specify how to build and package your go app.Using goreleaser comes with some nice benefits, like:
goreleaser can also automatically create github releases and upload artifacts to them, but I opted out of that in the config file for this project. I think having the homebrew file in CI artifacts makes it easy to add to homebrew-tools. Having the tarballs and shasums makes it easy to upload to github releases.
See the artifacts here:
See a full list of options here: https://goreleaser.com/customization/
This is the first test of goreleaser. I think this was a good experience and we should consider adopting this tool for other go projects. We could build and push a image to dockerhub so multiple projects can use it easily.
I will follow this merge up with adding summon-conjur to homebrew repo.