Skip to content

Commit

Permalink
build.make: support suppressing checks
Browse files Browse the repository at this point in the history
Individual repos may have to filter out certain packages from
testing. For example, in csi-test the cmd/csi-sanity directory
contains a special test that depends on additional parameters that set
the CSI driver to test against.
  • Loading branch information
pohly committed Jan 24, 2019
1 parent 154e33d commit 147892c
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions build.make
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,9 @@ else
TESTARGS =
endif

# Specific packages can be excluded from each of the tests below by setting the *_FILTER_CMD variables
# to something like "| grep -v 'github.com/kubernetes-csi/project/pkg/foobar'". See usage below.

build-%:
mkdir -p bin
CGO_ENABLED=0 GOOS=linux go build -a -ldflags '-X main.version=$(REV) -extldflags "-static"' -o ./bin/$* ./cmd/$*
Expand Down Expand Up @@ -95,19 +98,19 @@ test:
test: test-go
test-go:
@ echo; echo $@
go test `go list ./... | grep -v 'vendor'` $(TESTARGS)
go test `go list ./... | grep -v 'vendor' $(TEST_GO_FILTER_CMD)` $(TESTARGS)

.PHONY: test-vet
test: test-vet
test-vet:
@ echo; echo $@
go vet `go list ./... | grep -v vendor`
go vet `go list ./... | grep -v vendor $(TEST_VET_FILTER_CMD)`

.PHONY: test-fmt
test: test-fmt
test-fmt:
@ echo; echo $@
files=$$(find . -name '*.go' | grep -v './vendor'); \
files=$$(find . -name '*.go' | grep -v './vendor' $(TEST_FMT_FILTER_CMD)); \
if [ $$(gofmt -d $$files | wc -l) -ne 0 ]; then \
echo "formatting errors:"; \
gofmt -d $$files; \
Expand Down

0 comments on commit 147892c

Please sign in to comment.