diff options
-rw-r--r-- | Makefile | 19 | ||||
-rw-r--r-- | core/dnsserver/server.go | 4 | ||||
-rw-r--r-- | middleware/trace/trace_test.go | 6 |
3 files changed, 19 insertions, 10 deletions
@@ -7,23 +7,27 @@ all: coredns # Phony this to ensure we always build the binary. # TODO: Add .go file dependencies. .PHONY: coredns -coredns: deps core/zmiddleware.go core/dnsserver/zdirectives.go +coredns: check core/zmiddleware.go core/dnsserver/zdirectives.go go build $(BUILD_VERBOSE) -ldflags="-s -w" .PHONY: deps -deps: fmt +deps: go get ${BUILD_VERBOSE} + go get -u github.com/golang/lint/golint + +.PHONY: check +check: fmt deps .PHONY: test -test: deps +test: check go test -race $(TEST_VERBOSE) ./test ./middleware/... .PHONY: testk8s -testk8s: deps +testk8s: check go test -race $(TEST_VERBOSE) -tags=k8s -run 'TestKubernetes' ./test ./middleware/kubernetes/... .PHONY: coverage -coverage: deps +coverage: check set -e -x echo "" > coverage.txt for d in `go list ./... | grep -v vendor`; do \ @@ -52,6 +56,11 @@ fmt: @test -z "$$(gofmt -s -l . | grep -v vendor/ | tee /dev/stderr)" || \ (echo "please format Go code with 'gofmt -s -w'" && false) +.PHONY: lint +lint: deps + ## run go lint, suggestion only (not enforced) + @test -z "$$(golint ./... | grep -v vendor/ | grep -v ".pb.go:" | grep -vE "context\.Context should be the first parameter of a function" | tee /dev/stderr)" + .PHONY: distclean distclean: clean # Clean all dependencies and build artifacts diff --git a/core/dnsserver/server.go b/core/dnsserver/server.go index 4906571e6..386b0edd3 100644 --- a/core/dnsserver/server.go +++ b/core/dnsserver/server.go @@ -155,10 +155,10 @@ func (s *Server) Address() string { return s.Addr } // defined in the request so that the correct zone // (configuration and middleware stack) will handle the request. func (s *Server) ServeDNS(w dns.ResponseWriter, r *dns.Msg) { - s.ServeDNSWithContext(context.Background(), w, r) + s.serveDNSWithContext(context.Background(), w, r) } -func (s *Server) ServeDNSWithContext(ctx context.Context, w dns.ResponseWriter, r *dns.Msg) { +func (s *Server) serveDNSWithContext(ctx context.Context, w dns.ResponseWriter, r *dns.Msg) { defer func() { // In case the user doesn't enable error middleware, we still // need to make sure that we stay alive up here diff --git a/middleware/trace/trace_test.go b/middleware/trace/trace_test.go index 37dec2065..06b2aafcf 100644 --- a/middleware/trace/trace_test.go +++ b/middleware/trace/trace_test.go @@ -6,15 +6,15 @@ import ( "github.com/mholt/caddy" ) -// CreateTestTrace creates a trace middleware to be used in tests -func CreateTestTrace(config string) (*caddy.Controller, *trace, error) { +// createTestTrace creates a trace middleware to be used in tests +func createTestTrace(config string) (*caddy.Controller, *trace, error) { c := caddy.NewTestController("dns", config) m, err := traceParse(c) return c, m, err } func TestTrace(t *testing.T) { - _, m, err := CreateTestTrace(`trace`) + _, m, err := createTestTrace(`trace`) if err != nil { t.Errorf("Error parsing test input: %s", err) return |