.tool/lint: Use 'command -v' to detect LINTER presence
There was a 'command -v' check back when this script landed inaa748b62
(makefile stuff, 2016-09-19, #30), but it was removed in741873ad
(Makefile: suggests install.tools, 2016-09-28, #70). The default changed from 'gometalinter' to '${GOPATH}/bin/gometalinter' in6c9628cd
(Build and install from GOPATH, 2017-01-17, #320) and the -f guard landed in9c240aed
(lint: Exit and give instructions when linter missing, 2017-09-06, #850). This commit brings us back to our original 'command -v' check (in POSIX [1]), which allows support for both filesystem and $PATH based commands (and shell aliases, etc.). I've also made the default LINTER more flexible, using the ${parameter:-word} syntax from POSIX [2]. That keeps the default linter unchanged, but allows callers to set the LINTER environent variable to override. For example: $ LINTER=gometalinter .tool/lint will use the linter from your $PATH. [1]: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/command.html [2]: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_02 Signed-off-by: W. Trevor King <wking@tremily.us>
This commit is contained in:
parent
4b658672aa
commit
64bc1c7226
1 changed files with 2 additions and 2 deletions
|
@ -5,10 +5,10 @@ set -o nounset
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
|
|
||||||
# Create the linter path for use later
|
# Create the linter path for use later
|
||||||
LINTER=${GOPATH}/bin/gometalinter
|
LINTER="${LINTER:-${GOPATH}/bin/gometalinter}"
|
||||||
|
|
||||||
# Make sure gometalinter is installed
|
# Make sure gometalinter is installed
|
||||||
if [ ! -f ${LINTER} ]; then
|
if ! command -v ${LINTER} >/dev/null 2>/dev/null; then
|
||||||
echo >&2 "gometalinter must be installed. Please run 'make install.tools' and try again"
|
echo >&2 "gometalinter must be installed. Please run 'make install.tools' and try again"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in a new issue