NewsBot
/
Makefile
44 строки · 1015.0 Байт
1PROJECT_DIR = $(shell pwd)2PROJECT_BIN = $(PROJECT_DIR)/bin3
4MOQ = $(PROJECT_BIN)/moq5MOQ_VERSION = v0.3.16
7GOLANGCI_LINT = $(PROJECT_BIN)/golangci-lint8GOLANGCI_LINT_VERSION = v1.52.09
10
11# === Mocks generator ===
12
13.PHONY: .install-moq14.install-moq:15@echo "Installing moq..."16@mkdir -p $(PROJECT_BIN)17[ -f $(MOQ) ] || GOBIN=$(PROJECT_BIN) go install github.com/matryer/moq@$(MOQ_VERSION)18
19
20# === Linter ===
21.PHONY: .install-linter22.install-linter:23### INSTALL GOLANGCI-LINT ###24[ -f $(GOLANGCI_LINT) ] || curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(PROJECT_BIN) $(GOLANCI_LINT_VERSION)25
26.PHONY: lint27lint: .install-linter28### RUN GOLANGCI-LINT ###29$(GOLANGCI_LINT) run ./... --config=./.golangci.yml30
31.PHONY: lint-fast32lint-fast: .install-linter33$(GOLANGCI_LINT) run ./... --fast --config=./.golangci.yml34
35
36# === Install environment ===
37.PHONY: install-env38install-env: .install-moq .install-linter39
40
41# === Tests ===
42.PHONY: test43test:44go test ./...