1TEST?=$$(go list ./... |grep -Ev 'vendor|examples|testutils')
2GOFMT_FILES?=$$(find . -name '*.go' |grep -v vendor)
3
4default: check test
5
6tools:: ## Download and install all dev/code tools
7	@echo "==> Installing dev tools"
8	go get -u github.com/golang/dep/cmd/dep
9	go get -u github.com/alecthomas/gometalinter
10	gometalinter --install
11
12build::
13	@govvv build
14
15install::
16	@govvv install
17
18test:: ## Run unit tests
19	@echo "==> Running unit test with coverage"
20	@./scripts/go-test-with-coverage.sh
21
22testacc:: ## Run acceptance tests
23	@echo "==> Running acceptance tests"
24	TRITON_TEST=1 go test $(TEST) -v $(TESTARGS) -run -timeout 120m
25
26check::
27	gometalinter \
28    		--deadline 10m \
29    		--vendor \
30    		--sort="path" \
31    		--aggregate \
32    		--enable-gc \
33    		--disable-all \
34    		--enable goimports \
35    		--enable misspell \
36    		--enable vet \
37    		--enable deadcode \
38    		--enable varcheck \
39    		--enable ineffassign \
40    		--enable gofmt \
41    		./...
42
43.PHONY: help
44help:: ## Display this help message
45	@echo "GNU make(1) targets:"
46	@grep -E '^[a-zA-Z_.-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-15s\033[0m %s\n", $$1, $$2}'
47