diff options
-rwxr-xr-x | hack/install_golangci.sh | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/hack/install_golangci.sh b/hack/install_golangci.sh index a962df6e1..41cf90ddc 100755 --- a/hack/install_golangci.sh +++ b/hack/install_golangci.sh @@ -1,17 +1,23 @@ #!/usr/bin/env bash -set -e - die() { echo "${1:-No error message given} (from $(basename $0))"; exit 1; } [ -n "$VERSION" ] || die "\$VERSION is empty or undefined" -[ -n "$GOBIN" ] || die "\$GOBIN is empty or undefined" -BIN="./bin/golangci-lint" -if [ ! -x "$BIN" ]; then +function install() { echo "Installing golangci-lint v$VERSION into $BIN" curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b ./bin v$VERSION +} + +BIN="./bin/golangci-lint" +if [ ! -x "$BIN" ]; then + install else # Prints its own file name as part of --version output - echo "Using existing $(dirname $BIN)/$($BIN --version)" + $BIN --version | grep "$VERSION" + if [ $? -eq 0 ]; then + echo "Using existing $(dirname $BIN)/$($BIN --version)" + else + install + fi fi |