@@ -73,7 +73,7 @@ $(FUNCTIONS):
7373test : generate $(FUNCTION_TESTS ) # # Run unit tests for all functions
7474
7575.PHONY : $(FUNCTION_TESTS )
76- $(FUNCTION_TESTS ) :
76+ $(FUNCTION_TESTS ) : | generate
7777 $(MAKE ) CURRENT_FUNCTION=$(subst -TEST,,$@ ) func-test
7878
7979generate : install-mdtogo generate-docs
@@ -82,21 +82,21 @@ generate: install-mdtogo generate-docs
8282generate-docs : $(FUNCTION_GENERATE_DOCS ) # # Generate docs for all functions
8383
8484.PHONY : $(FUNCTION_GENERATE_DOCS )
85- $(FUNCTION_GENERATE_DOCS ) :
85+ $(FUNCTION_GENERATE_DOCS ) : | install-mdtogo
8686 $(MAKE ) CURRENT_FUNCTION=$(subst -GENERATE,,$@ ) docs-generate
8787
8888.PHONY : build
8989build : generate $(FUNCTION_BUILDS ) # # Build all function images. 'TAG' env is used to specify tag. 'dev' will be used if not set.
9090
9191.PHONY : $(FUNCTION_BUILDS )
92- $(FUNCTION_BUILDS ) :
92+ $(FUNCTION_BUILDS ) : | generate install-golangci-lint
9393 $(MAKE ) CURRENT_FUNCTION=$(subst -BUILD,,$@ ) TAG=$(TAG ) DEFAULT_CR=$(DEFAULT_CR ) func-build
9494
9595.PHONY : format
9696format : generate $(FUNCTION_FORMATS )
9797
9898.PHONY : $(FUNCTION_FORMATS )
99- $(FUNCTION_FORMATS ) :
99+ $(FUNCTION_FORMATS ) : | generate install-golangci-lint
100100 $(MAKE ) CURRENT_FUNCTION=$(subst -FORMAT,,$@ ) TAG=$(TAG ) DEFAULT_CR=$(DEFAULT_CR ) func-format
101101
102102.PHONY : push
@@ -106,6 +106,7 @@ push: $(FUNCTION_PUSH) ## Push images to registry. WARN: This operation should o
106106$(FUNCTION_PUSH ) :
107107 $(MAKE ) CURRENT_FUNCTION=$(subst -PUSH,,$@ ) TAG=$(TAG ) DEFAULT_CR=$(DEFAULT_CR ) func-push
108108
109+ .PHONY : install-mdtogo
109110install-mdtogo :
110111 go install github.com/kptdev/kpt/mdtogo@main
111112
@@ -114,16 +115,19 @@ install-mdtogo:
114115func-verify : func-format func-test
115116func-format : docs-generate func-fix func-vet func-fmt func-lint
116117
118+ .PHONY : install-golangci-lint
119+ install-golangci-lint :
120+ (which $( GOPATH) /bin/golangci-lint || \
121+ curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/HEAD/install.sh | sh -s -- -b $(GOPATH ) /bin latest)
122+
117123func-fix :
118124 cd $(CURRENT_FUNCTION ) && go fix -omitzero=false ./...
119125
120126func-fmt :
121127 cd $(CURRENT_FUNCTION ) && go fmt ./...
122128
123- func-lint :
124- (which $( GOPATH) /bin/golangci-lint || \
125- curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/v2.11.4/install.sh | sh -s -- -b $(GOPATH ) /bin v2.11.4)
126- cd $(CURRENT_FUNCTION ) && time $(GOPATH ) /bin/golangci-lint run --fix --timeout=10m ./...
129+ func-lint : install-golangci-lint
130+ cd $(CURRENT_FUNCTION ) && time $(GOPATH ) /bin/golangci-lint run --allow-parallel-runners --fix --timeout=10m ./...
127131
128132func-test :
129133 cd $(CURRENT_FUNCTION ) && go test -cover ./...
0 commit comments