Skip to content

A simple command-line tool to manage GitHub releases.

License

Notifications You must be signed in to change notification settings

8ff/releaseMaker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ReleaseMaker

A simple command-line tool to manage GitHub releases. With this tool, you can create new releases, upload assets to existing releases, and delete releases by tag name.

Installation

Using in Github Actions

releaseMaker is used in all of the 8ff repos including this one, example build can be see in .github/workflows/build.yml

/tmp/releaseMaker upload ${{ github.repository }} ${{ env.TAG }} [file] [assetName]

Quick install

repo="releaseMaker"; name="releaseMaker"; os=$(uname | tr '[:upper:]' '[:lower:]'); arch=$(uname -m); case $arch in x86_64) arch="amd64" ;; arm64) arch="arm64" ;; esac; url="https://github.com/8ff/${repo}/releases/download/latest/${name}.${os}.${arch}"; curl -L $url -o ${name} && chmod +x ${name}

Grab a binary from releases or clone the repository and build the project using Go:

git clone https://github.com/8ff/releaseMaker.git
cd releaseMaker
go build

Usage

Make sure to set your GitHub token as an environment variable:

export GITHUB_TOKEN=your_github_token

Create a New Release

Create a new release for the specified repository:

./releaseMaker create [owner/repo] [tag] [name] [body]
  • owner/repo: The owner and repository name, separated by a slash.
  • tag: The tag name for the release.
  • name: The name of the release.
  • body: The body text of the release.

Upload an Asset to a Release

Upload a file as an asset to an existing release by tag name:

./releaseMaker upload [owner/repo] [tag] [file] [assetName]
  • owner/repo: The owner and repository name, separated by a slash.
  • tag: The tag name of the release to upload the asset to.
  • file: The path to the file to upload.
  • assetName: The name of the asset in the release.

Delete a Release

Delete an existing release by tag name:

./releaseMaker delete [owner/repo] [tag]
  • owner/repo: The owner and repository name, separated by a slash.
  • tag: The tag name of the release to delete.

Contributing

Feel free to open issues or submit pull requests. All contributions are welcome!

License

GNU Affero General Public License v3.0

About

A simple command-line tool to manage GitHub releases.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages