aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile19
-rw-r--r--core/dnsserver/server.go4
-rw-r--r--middleware/trace/trace_test.go6
3 files changed, 19 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index 75bc40d2c..6bf69d9c6 100644
--- a/Makefile
+++ b/Makefile
@@ -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