mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-23 06:40:23 +00:00
91774fc936
Uses github.com/libopenstorage/secrets to communicate with Vault. This removes the need for maintaining our own limited Vault APIs. By adding the new dependency, several other packages got updated in the process. Unused indirect dependencies have been removed from go.mod. Signed-off-by: Niels de Vos <ndevos@redhat.com>
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))
|