Makefile 873 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. .PHONY: build
  2. build:
  3. clear
  4. go fmt ./...
  5. go build -o ./bin/prolet ./cmd/prolet/main.go
  6. .PHONY: dev
  7. dev:
  8. clear
  9. go fmt ./...
  10. go build -race -o ./bin/prolet ./cmd/prolet/main.go
  11. mod:
  12. clear
  13. go get -u ./...
  14. go mod tidy -compat=1.24.2
  15. go mod vendor
  16. go fmt ./...
  17. .PHONY: test
  18. test:
  19. clear
  20. go fmt ./...
  21. go test -race -shuffle=on -timeout=30s -coverprofile=./cover.out ./...
  22. go tool cover -func=./cover.out
  23. .PHONY: lint
  24. lint:
  25. clear
  26. go fmt ./...
  27. go vet ./...
  28. # go install honnef.co/go/tools/cmd/staticcheck@latest
  29. # staticcheck ./...
  30. # go install github.com/MakeNowJust/enumcase/cmd/enumcase@latest
  31. # enumcase ./...
  32. # go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
  33. # golangci-lint run ./...
  34. go install github.com/fzipp/gocyclo/cmd/gocyclo@latest
  35. gocyclo -over 11 .
  36. go install github.com/securego/gosec/cmd/gosec@latest
  37. gosec ./...