github.com/tilotech/tilores-cli@v0.28.0/Makefile (about) 1 LIST_ALL := $(shell go list ./... | grep -v vendor | grep -v mocks) 2 3 all: lint test 4 5 .PHONY: lint 6 lint: ## Lint the files 7 @golangci-lint version 8 @golangci-lint run --timeout 3m0s 9 10 .PHONY: test 11 test: ## Run unit tests 12 @go test -short -count 1 -v ./... 13 14 .PHONY: race 15 race: ## Run data race detector 16 @go test -race -count 1 -v ./... 17 18 .PHONY: coverage 19 coverage: ## Generate coverage report 20 @go-acc ./... 21 @go tool cover -func=coverage.txt 22 23 .PHONY: build 24 build: ## Build binary file 25 @go build -o ./bin/$$(basename $$(go list -m)) 26 27 .PHONY: depcheck 28 depcheck: ## Check dependencies for vulnerabilities 29 @go list -json -deps ./... | nancy sleuth 30 31 .PHONY: upgrade 32 upgrade: ## Upgrade the dependencies 33 @go get -u -t ./... 34 @go mod tidy 35 @go mod vendor 36 37 .PHONY: licensecheck 38 licensecheck: ## Check dependencies for forbidden licenses 39 @go-licenses check ./... 40 41 .PHONY: clean 42 clean: ## Remove outdated file and empty cache 43 @rm -rf "$(go env GOCACHE)" 44 @rm -f coverage.* 45 @rm -f ./bin/* 46 47 .PHONY: help 48 help: ## Display this help screen 49 @grep -h -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'