Deployer for my Go projects
wget https://github.com/ndaidong/godler/releases/latest/download/godler_linux_amd64 -O godler
chmod +x godler
./godler -v
mkdir -p ~/.local/bin
mv ./godler ~/.local/bin
godler -v# Download to current directory
godler -u https://github.com/org/repo/releases/download/v1.0.0/app_linux_amd64
# Download and rename
godler -n app -u https://github.com/org/repo/releases/download/v1.0.0/app_linux_amd64
# Download to a specific directory
godler -p ~/.local/bin -u https://github.com/org/repo/releases/download/v1.0.0/app_linux_amd64
# Download to a specific path (directory + name)
godler -d ~/.local/bin/app -u https://github.com/org/repo/releases/download/v1.0.0/app_linux_amd64
# Download with checksum verification
godler -c <sha256> -u https://github.com/org/repo/releases/download/v1.0.0/app_linux_amd64| Flag | Description |
|---|---|
-h |
Show available arguments |
-v |
Print version info |
-u |
Target download URL |
-n |
Rename downloaded file |
-p |
Download directory |
-d |
Full destination path |
-c |
Expected SHA256 checksum |
- Flags
-nand-dare mutually exclusive. - Flags
-pand-dare mutually exclusive.
Create ~/.config/godler/config.json:
{
"orgs": {
"orgnanization-one": "ghp_xxxxxxxxxxxxxxxxxxxx",
"orgnanization-two": "ghp_yyyyyyyyyyyyyyyyyyyy"
}
}The token is looked up by the organization name from the URL. If no token is found, the download proceeds without authentication (public repo).
- Standard URL format: godler expects GitHub release asset URLs in the format:
https://github.com/{org}/{repo}/releases/download/{tag}/{asset} - Home directory: godler assumes
$HOMEis set. Config is read from~/.config/godler/config.json.
make build VERSION=v1.2.3
make test