podman/hack/install_swagger.sh

32 lines
821 B
Bash
Executable File

#!/usr/bin/env bash
# This script is intended to be a convenience, to be called from the
# Makefile `.install.swagger` target. Any other usage is not recommended.
BIN="$BINDIR/swagger"
die() { echo "${1:-No error message given} (from $(basename $0))"; exit 1; }
function install() {
echo "Installing swagger v$VERSION into $BIN"
curl -sS --retry 5 --location -o $BIN \
https://github.com/go-swagger/go-swagger/releases/download/v$VERSION/swagger_${GOOS}_${GOARCH}
chmod +x $BIN
$BIN version
}
for req_var in VERSION BINDIR GOOS GOARCH; do
[[ -n "${!req_var}" ]] || die "\$$req_var is empty or undefined"
done
if [ ! -x "$BIN" ]; then
install
else
$BIN version | grep "$VERSION"
if [[ "$?" -eq 0 ]]; then
echo "Using existing $BIN"
else
install
fi
fi