| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #!/bin/bash
- function exit_if_fail {
- command=$@
- echo "Executing '$command'"
- eval $command
- rc=$?
- if [ $rc -ne 0 ]; then
- echo "'$command' returned $rc."
- exit $rc
- fi
- }
- go get -u github.com/alecthomas/gometalinter
- go get -u github.com/jgautheron/goconst/cmd/goconst
- go get -u honnef.co/go/tools/cmd/staticcheck
- go get -u github.com/golangci/golangci-lint/cmd/golangci-lint
- # use gometalinter when lints are not available in golangci or
- # when gometalinter is better. Eg. goconst for gometalinter does not lint test files
- # which is not desired.
- exit_if_fail gometalinter --enable-gc --vendor --deadline 10m --disable-all \
- --enable=goconst\
- --enable=staticcheck
- # use golangci-when possible
- exit_if_fail golangci-lint run --deadline 10m --disable-all \
- --enable=deadcode\
- --enable=gofmt\
- --enable=gosimple\
- --enable=govet\
- --enable=ineffassign\
- --enable=structcheck\
- --enable=typecheck\
- --enable=unconvert\
- --enable=unused\
- --enable=varcheck
- exit_if_fail go vet ./pkg/...
- exit_if_fail make revive
- exit_if_fail make revive-alerting
- exit_if_fail make gosec
|