12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- .PHONY: all test cover gofmt gofmt-fix license-check
- # Grab the absolute directory that contains this file.
- ROOT_DIR:=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
- # These variables can be overridden by setting an environment variable.
- TEST_PACKAGES?=pkg/ip subnet remote
- TEST_PACKAGES_EXPANDED=$(TEST_PACKAGES:%=github.com/coreos/flannel/%)
- PACKAGES?=$(TEST_PACKAGES) network
- PACKAGES_EXPANDED=$(PACKAGES:%=github.com/coreos/flannel/%)
- default: help
- all: test ## Run all the tests
- binary: artifacts/flanneld ## Create the flanneld binary
- artifacts/flanneld: $(shell find . -type f -name '*.go')
- mkdir -p artifacts
- go build -o artifacts/flanneld \
- -ldflags "-extldflags -static -X github.com/coreos/flannel/version.Version=$(shell git describe --dirty)"
- test:
- go test -cover $(TEST_PACKAGES_EXPANDED)
- cd dist; ./mk-docker-opts_tests.sh
- cover:
- #A single package must be given - e.g. 'PACKAGES=pkg/ip make cover'
- go test -coverprofile cover.out $(PACKAGES_EXPANDED)
- go tool cover -html=cover.out
- # Throw an error if gofmt finds problems.
- # "read" will return a failure return code if there is no output. This is inverted wth the "!"
- gofmt:
- ! gofmt -d $(PACKAGES) 2>&1 | read
- gofmt-fix:
- gofmt -w $(PACKAGES)
- license-check:
- dist/license-check.sh
- ## Display this help text
- help: # Some kind of magic from https://gist.github.com/rcmachado/af3db315e31383502660
- $(info Available targets)
- @awk '/^[a-zA-Z\-\_0-9]+:/ { \
- nb = sub( /^## /, "", helpMsg ); \
- if(nb == 0) { \
- helpMsg = $$0; \
- nb = sub( /^[^:]*:.* ## /, "", helpMsg ); \
- } \
- if (nb) \
- printf "\033[1;31m%-" width "s\033[0m %s\n", $$1, helpMsg; \
- } \
- { helpMsg = $$0 }' \
- $(MAKEFILE_LIST)
|