ff8b229192
We should no longer be building anything into vendor/bin in the scripts, so adding it to the path can lead to all sorts of confusion if old binaries are there.
42 lines
1.0 KiB
Bash
Executable File
42 lines
1.0 KiB
Bash
Executable File
#! /bin/bash
|
|
|
|
# Runs the linters against dendrite
|
|
|
|
# The linters can take a lot of resources and are slow, so they can be
|
|
# configured using two environment variables:
|
|
#
|
|
# - `DENDRITE_LINT_CONCURRENCY` - number of concurrent linters to run,
|
|
# gometalinter defaults this to 8
|
|
# - `DENDRITE_LINT_DISABLE_GC` - if set then the the go gc will be disabled
|
|
# when running the linters, speeding them up but using much more memory.
|
|
|
|
|
|
set -eu
|
|
|
|
export GOPATH="$(pwd):$(pwd)/vendor"
|
|
export PATH="$PATH:$(pwd)/bin"
|
|
|
|
args=""
|
|
if [ ${1:-""} = "fast" ]
|
|
then args="--config=linter-fast.json"
|
|
else args="--config=linter.json"
|
|
fi
|
|
|
|
if [ -n "${DENDRITE_LINT_CONCURRENCY:-}" ]
|
|
then args="$args --concurrency=$DENDRITE_LINT_CONCURRENCY"
|
|
fi
|
|
|
|
if [ -z "${DENDRITE_LINT_DISABLE_GC:-}" ]
|
|
then args="$args --enable-gc"
|
|
fi
|
|
|
|
echo "Installing lint search engine..."
|
|
gb build github.com/alecthomas/gometalinter/
|
|
gometalinter --config=linter.json ./... --install
|
|
|
|
echo "Looking for lint..."
|
|
gometalinter ./... $args
|
|
|
|
echo "Double checking spelling..."
|
|
misspell -error src *.md
|