From caaaa2c5e18fe76d6b2ce8e7a700fa85212a3a3e Mon Sep 17 00:00:00 2001 From: Valentin Rothberg Date: Sun, 17 Jan 2021 17:15:23 +0100 Subject: hack/install_golangci.sh: smarter install Detect if the installed version of golangci-lint is outdated and update it if needed. Signed-off-by: Valentin Rothberg --- hack/install_golangci.sh | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'hack/install_golangci.sh') 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 -- cgit v1.2.3-54-g00ecf