A small command-line tool for expanding abbreviated host strings into full hostname lists.
cliutils hosts "host[1..2]"
host1
host2
git,make, andcurl(preinstalled on most dev machines; on Debian/Ubuntu:sudo apt-get install -y git make curl)- Go 1.26 — installed via mise below, or bring your own.
This project pins its Go version with mise. Install mise if you don't have it:
curl https://mise.run | shActivate it in your shell so the pinned go lands on your PATH, then reload:
echo 'eval "$(mise activate bash)"' >> ~/.bashrc # or ~/.zshrc, with "zsh"
exec $SHELLInstall the pinned Go toolchain from mise.toml:
mise install(Prefer not to use mise? Install Go 1.26 yourself and skip these steps.)
From the repo root, this should pass with no errors:
makeYou're ready when it prints ok for the tests and produces ./build/cliutils.
make build
./build/cliutils hosts "web[1..3]"make test # run tests
make lint # gofmt check + go vet
make fmt # format sources
make # lint, test, buildThe core expansion logic lives in hostexpansion/.