1
- SOURCE_DIRS = handler leader predicate status
2
1
SOURCES := $(shell find . -name '* .go' -not -path "* /vendor/* " -not -path "* /.git/* ")
3
2
.DEFAULT_GOAL := build
4
3
5
- # ensure: ## Install or update project dependencies
6
- # @dep ensure
7
-
8
4
build : $(SOURCES ) # # Build Test
9
5
go build -i -ldflags=" -s -w" ./...
10
6
@@ -15,38 +11,37 @@ lint-fix: golangci-lint ## Run golangci lint to automatically perform fixes
15
11
@$(GOLANGCI_LINT ) run --fix
16
12
17
13
fmt : # # Run go fmt
18
- @gofmt -d $( SOURCES )
14
+ @go fmt ./...
19
15
20
16
fmtcheck : # # Check go formatting
21
17
@gofmt -l $(SOURCES ) | grep " .*\.go" ; if [ " $$ ?" = " 0" ]; then exit 1; fi
22
18
23
19
test : # # Run unit tests
24
- @go test -race -covermode atomic -coverprofile cover.out $( addprefix ./, $( addsuffix / ... , $( SOURCE_DIRS ) ) )
20
+ @go test -race -covermode atomic -coverprofile cover.out ./ ...
25
21
26
22
vet : # # Run go vet
27
- @go vet $( addprefix ./, $( SOURCE_DIRS ) )
23
+ @go vet ./...
28
24
29
25
tidy : # # Tidy go dependencies
30
26
@go mod tidy
31
27
32
- check-license : $(SOURCES )
28
+ check-license : $(SOURCES ) # # Check license headers
33
29
@./hack/check-license.sh " $( SOURCES) "
34
30
35
31
check : tidy fmtcheck vet lint build test check-license # # Pre-flight checks before creating PR
36
32
@git diff --exit-code
37
33
38
34
clean : # # Clean up your working environment
39
- @rm -f coverage-all.out coverage .out
35
+ @rm -f cover .out
40
36
37
+ GOLANGCI_LINT =./bin/golangci-lint
38
+ GOLANGCI_LINT_VER =1.30.0
41
39
golangci-lint :
42
- ifeq ( , $(shell which golangci-lint ) )
40
+ ifneq ( $( GOLANGCI_LINT_VER ) , $(shell $( GOLANGCI_LINT ) version 2>&1 | cut -d" " -f4 ) )
43
41
@{ \
44
42
set -e ;\
45
- curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(shell go env GOPATH)/bin v1.29.0 ;\
43
+ curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b bin v$(GOLANGCI_LINT_VER) ;\
46
44
}
47
- GOLANGCI_LINT =$(shell go env GOPATH) /bin/golangci-lint
48
- else
49
- GOLANGCI_LINT =$(shell which golangci-lint)
50
45
endif
51
46
52
47
# generate: ## regenerate mocks
@@ -61,4 +56,4 @@ help: ## Show this help screen
61
56
@grep -E ' ^[ a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST ) | \
62
57
awk ' BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
63
58
64
- .PHONY : ensure build lint fmt fmtcheck test vet check help clean
59
+ .PHONY : build lint lint-fix fmt fmtcheck test vet tidy check-license check clean golangci-lint help
0 commit comments