- 
                Notifications
    You must be signed in to change notification settings 
- Fork 69
Use goreleaser to build releases and also publish Homebrew formula #134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks cool, never used so can't say much :D
Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <joe@sourcegraph.com>
| I also tried it out a little bit back. Its a fun bit a of software. Will take a look at this PR. sourcegraph/docsite#36 | 
| One "downside" seems to be that  | 
| Do you mean this place publishes releases to the page in a tar archive instead of raw binaries? | 
| Yes, exactly. Take a look at GitHub's  | 
| If they need to be packaged that's a bit of an issue. Old instances will now not be able to download new patch releases if they're deployed this way. New instances could untar them and return just the raw binary. Thoughts on how to go forward? | 
| I managed to work this out for docsite: https://github.com/sourcegraph/docsite/blob/master/.goreleaser.yml see the release here https://github.com/sourcegraph/docsite/releases/tag/v1.4.0 | 
| 
 It's the Travis deployment API key which allows it to upload files to https://github.com/sourcegraph/src-cli/releases I am generally against complicating the installation instructions, our tooling should serve to make installation easier and I don't see a particularly good reason to make that more complicated (after all, we can always use goreleaser and just unarchive/rename the binaries to not include a version number prior to uploading them to GitHub). | 
| 
 I know why it's there 😄 I'm just not clear on what exactly is in there. Is it the key itself, i.e. just  
 Agree with that stance. And it's also the motivation behind me looking into this, since moving to  What exactly are you concerned about? That we complicate the instructions if we add a  | 
| 
 Got it, unfortunately I don't know either. I think it's just  
 Yes. In short, as long as the current installation commands remain the same I am happy 👍If there are changes to those I would like to review them. | 
| Just tried this out with @slimsag to release a new version. It worked! Will merge this and cut a new release. | 
) * Add .goreleaser.yml for brew * Run goreleaser on travis * Update .goreleaser.yml Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <joe@sourcegraph.com> * Move env vars into one setting * Fix ldflags in goreleaser config * Change goreleaser config to use binary releases * Add new GITHUB_TOKEN to .travis.yml * Create tarballs with goreleaser for Homebrew formula Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
I discovered GoReleaser a few days ago when I found out that Github's new
ghCLI is automatically released as a Homebrew formula: https://github.com/github/homebrew-ghThat would be really nice to have. Now, I'm not sure whether the config here works as intended.
Doing a dry-run release locally seems to work:
But that also includes the snapshots and I'm mostly concerned about the Travis CI configuration.
I moved the
secrettoken from thedeplyconfiguration to the global env vars, sincegoreleaserexpects aGITHUB_TOKENenv var, but since I don't have an encryption key, I'm not sure what's in thesecret(cc @slimsag)