Just had a look at a FLOSS project that publishes several language specific SDKs for their Go based CLI. Every single repo uses a different strategy for posting releases via GH Actions. There’s no way to test those settings unless it’s in production.

What a headache 🤦‍♂️

@jreleaser excels at this

@jreleaser can release any project regardless of its source language. It also provides an homogeneous yet flexible configuration that adapts to individual needs of each language.

Take a look at the some of the examples (Go, Rust, Swift, .Net, etc) https://jreleaser.org/guide/latest/examples/miscellaneous/index.html

Miscellaneous :: JReleaser

@jreleaser In those repos, the configuration found in jreleaser.yml and .github/workflows/*.yml is almost identical, varying in the number and names of release artifacts (amd64 vs. x86_64 for example), and specific build instructions (go build vs. cargo, et al).

You can even release locally for most repos!