This toolkit represents a collection of bash scripts for various purposes.
Any and all contributions are welcome; just open a PR.
1. Install the tools
# curl
bash <(curl -sSL "https://github.com/releasetools/cli/releases/download/v0.0.12/install.sh")
# or wget
bash <(wget -q -O- "https://github.com/releasetools/cli/releases/download/v0.0.12/install.sh")Or alternatively, with brew:
brew tap releasetools/tap
brew install releasetools-cliThe tools will by default be installed to ~/.local/share/releasetools/cli/VERSION/ and a binary will be symlinked at ~/.local/bin/releasetools.
2. Utilize the releasetools library
# With ~/.local/bin in your PATH:
export PATH=~/.local/bin:"$PATH"
# You can run commands, e.g.:
releasetools base::::version
# vX.Y.Z
# Optionally, check that all dependencies for all modules are correctly installed
releasetools base::check_deps
# Ok.
# You can also check the install location
releasetools base::install_location
# /Users/user/.local/share/releasetools/cli/vX.Y.Z/releasetools.bashSeveral customizations can be applied prior to installation:
1. The location where the tools will be installed:
export RELEASETOOLS_INSTALL_DIR="$HOME/.local/share"
# proceed with the installation steps outlined above2. The path where the binary is symlinked:
export RELEASETOOLS_BINARY_DIR="$HOME/.local/bin"
# proceed with the installation steps outlined aboveThe releasetools/cli library can be installed via a GitHub workflow:
steps:
...
- uses: releasetools/cli@v0
...A few customizations are available, if needed:
steps:
# Install releasetools
- uses: releasetools/cli@v0
# Customizations
# with:
# # Pin a specific version (defaults to latest)
# version: "v0.0.12"
# env:
# # Configure the installation directory
# RELEASETOOLS_INSTALL_DIR: /home/runner/.local/share
# # Configure where binaries are linked (e.g. a directory that is already in PATH)
# RELEASETOOLS_BINARY_DIR: /home/runner/.local/bin
# Check that `releasetools` was installed correctly
- run: releasetools base::check_depsNOTE: Release tools uses
pythonfor certain actions. When installed as part of a workflow, it will attempt to install the required dependencies, ifpipis available in thePATH.
If the workflow also needs python, it is recommended to install it before releasetools, e.g.:
steps:
# Install Python first, to avoid having to install dependencies separately
- uses: actions/setup-python@v6
with:
python-version: "..."
# Will install releasetools and necessary python dependencies
- uses: releasetools/cli@v0You can find the code and development guidelines in the src/ directory.
Once you have completed and tested the code, see the release instructions.
Copyright © 2025 Mihai Bojin
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.