42 lines
1.3 KiB
Makefile
42 lines
1.3 KiB
Makefile
GOOS=$(shell go env GOOS)
|
|
GOARCH=$(shell go env GOARCH)
|
|
GOBIN=$(shell go env GOBIN)
|
|
ifeq ($(GOBIN),)
|
|
GOBIN := $(shell go env GOPATH)/bin
|
|
endif
|
|
OSARCH=$(shell uname -m)
|
|
GOLANGCI_LINT_PATH=$(GOBIN)/golangci-lint
|
|
SWAG_PATH=$(GOBIN)/swag
|
|
|
|
.PHONY: install-git-hooks
|
|
install-git-hooks:
|
|
@echo "Installing git hooks..."
|
|
pre-commit install --hook-type pre-commit
|
|
pre-commit install --hook-type commit-msg
|
|
|
|
.PHONY: install-counterfeiter
|
|
install-counterfeiter:
|
|
@echo "Installing github.com/maxbrunsfeld/counterfeiter..."
|
|
@go install github.com/maxbrunsfeld/counterfeiter/v6@v6.6.1
|
|
|
|
.PHONY: install-swag
|
|
install-swag:
|
|
@echo "Installing github.com/swaggo/swag..."
|
|
@test -f $(SWAG_PATH) || (wget -qO- https://github.com/swaggo/swag/releases/download/v1.8.7/swag_1.8.7_$(GOOS)_$(OSARCH).tar.gz | tar -xz -C $(GOBIN)/)
|
|
|
|
.PHONY: install-golangci-lint
|
|
install-golangci-lint:
|
|
@echo "Installing github.com/golangci/golangci-lint..."
|
|
@test -f $(GOLANGCI_LINT_PATH) || curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(GOBIN) v1.53.2
|
|
|
|
.PHONY: install-tools
|
|
install-tools: install-golangci-lint install-counterfeiter install-swag
|
|
|
|
.PHONY: install
|
|
install: install-tools install-git-hooks
|
|
|
|
.PHONY: generate
|
|
generate: install-counterfeiter install-swag
|
|
@echo "Running go generate..."
|
|
go generate ./...
|