mirror of
https://github.com/minio/minio.git
synced 2024-12-27 07:35:55 -05:00
2aa18cafc6
With CoreDNS now supporting etcdv3 as the DNS backend, we can update our federation target to etcdv3. Users will now be able to use etcdv3 server as the federation backbone. Minio will update bucket data to etcdv3 and CoreDNS can pick that data up and serve it as bucket style DNS path.
75 lines
2.0 KiB
Makefile
75 lines
2.0 KiB
Makefile
export GO15VENDOREXPERIMENT=1
|
|
|
|
PACKAGES := $(shell glide nv)
|
|
|
|
GO_FILES := $(shell \
|
|
find . '(' -path '*/.*' -o -path './vendor' ')' -prune \
|
|
-o -name '*.go' -print | cut -b3-)
|
|
|
|
.PHONY: install
|
|
install:
|
|
glide --version || go get github.com/Masterminds/glide
|
|
glide install
|
|
|
|
.PHONY: build
|
|
build:
|
|
go build -i $(PACKAGES)
|
|
|
|
.PHONY: test
|
|
test:
|
|
go test -cover -race $(PACKAGES)
|
|
|
|
.PHONY: gofmt
|
|
gofmt:
|
|
$(eval FMT_LOG := $(shell mktemp -t gofmt.XXXXX))
|
|
@gofmt -e -s -l $(GO_FILES) > $(FMT_LOG) || true
|
|
@[ ! -s "$(FMT_LOG)" ] || (echo "gofmt failed:" | cat - $(FMT_LOG) && false)
|
|
|
|
.PHONY: govet
|
|
govet:
|
|
$(eval VET_LOG := $(shell mktemp -t govet.XXXXX))
|
|
@go vet $(PACKAGES) 2>&1 \
|
|
| grep -v '^exit status' > $(VET_LOG) || true
|
|
@[ ! -s "$(VET_LOG)" ] || (echo "govet failed:" | cat - $(VET_LOG) && false)
|
|
|
|
.PHONY: golint
|
|
golint:
|
|
@go get github.com/golang/lint/golint
|
|
$(eval LINT_LOG := $(shell mktemp -t golint.XXXXX))
|
|
@cat /dev/null > $(LINT_LOG)
|
|
@$(foreach pkg, $(PACKAGES), golint $(pkg) >> $(LINT_LOG) || true;)
|
|
@[ ! -s "$(LINT_LOG)" ] || (echo "golint failed:" | cat - $(LINT_LOG) && false)
|
|
|
|
.PHONY: staticcheck
|
|
staticcheck:
|
|
@go get honnef.co/go/tools/cmd/staticcheck
|
|
$(eval STATICCHECK_LOG := $(shell mktemp -t staticcheck.XXXXX))
|
|
@staticcheck $(PACKAGES) 2>&1 > $(STATICCHECK_LOG) || true
|
|
@[ ! -s "$(STATICCHECK_LOG)" ] || (echo "staticcheck failed:" | cat - $(STATICCHECK_LOG) && false)
|
|
|
|
.PHONY: lint
|
|
lint: gofmt govet golint staticcheck
|
|
|
|
.PHONY: cover
|
|
cover:
|
|
./scripts/cover.sh $(shell go list $(PACKAGES))
|
|
go tool cover -html=cover.out -o cover.html
|
|
|
|
update-license:
|
|
@go get go.uber.org/tools/update-license
|
|
@update-license \
|
|
$(shell go list -json $(PACKAGES) | \
|
|
jq -r '.Dir + "/" + (.GoFiles | .[])')
|
|
|
|
##############################################################################
|
|
|
|
.PHONY: install_ci
|
|
install_ci: install
|
|
go get github.com/wadey/gocovmerge
|
|
go get github.com/mattn/goveralls
|
|
go get golang.org/x/tools/cmd/cover
|
|
|
|
.PHONY: test_ci
|
|
test_ci: install_ci
|
|
./scripts/cover.sh $(shell go list $(PACKAGES))
|