1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2024-12-26 21:05:00 +02:00
opentelemetry-go/Makefile
Edward Muller 063035e9e0 Add goimports and golangci-lint (#17)
goimports for import rewritting
golangci-lint as the configurable linting swiss army knife.

These tools are recorded in [tools.go](https://github.com/golang/go/wiki/Modules#how-can-i-track-tool-dependencies-for-a-module). This records
them as a dependency to make sure we're all using the same tool versions.

To make sure this project's tool's versions don't stomp over versions
from other projects, they are installed in ./.tools, which is
.gitignored.

goimports was run and fixed up a single file:
plugin/httptrace/httptrace.go

I prefer to group local packages below external packages, hence the use
of goimports -local option.

.golangci.yml contains nothing but an incomplete set of defaults ATM.
I expect those to change over time though. ;-)

To use, run:

$ make precommit

Fixes #15
2019-06-18 17:09:49 -07:00

13 lines
478 B
Makefile

.PHONY: precommit
TOOLS_DIR := ./.tools
$(TOOLS_DIR)/golangci-lint: go.mod go.sum tools.go
go build -o $(TOOLS_DIR)/golangci-lint github.com/golangci/golangci-lint/cmd/golangci-lint
$(TOOLS_DIR)/goimports: go.mod go.sum tools.go
go build -o $(TOOLS_DIR)/goimports golang.org/x/tools/cmd/goimports
precommit: $(TOOLS_DIR)/goimports $(TOOLS_DIR)/golangci-lint
$(TOOLS_DIR)/goimports -d -local github.com/open-telemetry/opentelemetry-go -w .
$(TOOLS_DIR)/golangci-lint run