GitHub Release is a command-line utility for uploading files to GitHub releases.
The recommended way to get GitHub Release is to download the latest release for your operating system. These releases are, of course, added with GitHub Release itself.
Once you've got it, run it like so:
github-release upload \ --token '...' \ --owner 'someone' \ --repo 'something' \ --tag '1.2.3' \ --file 'path/to/example.tgz' \ --name 'example-1.2.3.tgz'
You can generate a token on the personal access tokens page of your
personal settings. The
file option is the path to the local file you want to
name option is what the file should be called on the GitHub
GitHub Release is written in Haskell. If you want to build it yourself or use it in your project, you'll want to get Stack. Once you've done that, you can install and use it from the command line.
stack --resolver nightly install github-release stack exec -- github-release upload # as above ...
Or you can use it from Haskell.
import qualified GitHubRelease GitHubRelease.upload "..." -- token "someone" -- owner "something" -- repo "1.2.3" -- tag "path/to/example.tgz" -- file "example-1.2.3.tgz" -- name
Inspired by https://github.com/aktau/github-release.