Skip to content

Commit

Permalink
hack/install_golangci.sh: smarter install
Browse files Browse the repository at this point in the history
Detect if the installed version of golangci-lint is outdated and update
it if needed.

Signed-off-by: Valentin Rothberg <[email protected]>
  • Loading branch information
vrothberg committed Jan 17, 2021
1 parent f38b7f4 commit caaaa2c
Showing 1 changed file with 12 additions and 6 deletions.
18 changes: 12 additions & 6 deletions hack/install_golangci.sh
Original file line number Diff line number Diff line change
@@ -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

0 comments on commit caaaa2c

Please sign in to comment.