mirror of
				https://github.com/coredns/coredns.git
				synced 2025-10-31 10:13:14 -04:00 
			
		
		
		
	Benching (#2121)
* Benchmark stuff Signed-off-by: Miek Gieben <miek@miek.nl> * Makefile changes Signed-off-by: Miek Gieben <miek@miek.nl> * Fixes Signed-off-by: Miek Gieben <miek@miek.nl> * fix Signed-off-by: Miek Gieben <miek@miek.nl> * Add benchmark test Signed-off-by: Miek Gieben <miek@miek.nl> * Add master branch Signed-off-by: Miek Gieben <miek@miek.nl>
This commit is contained in:
		| @@ -1,5 +1,4 @@ | ||||
| sudo: required | ||||
| # Trusty distribution is much faster when sudo is required | ||||
| dist: trusty | ||||
|  | ||||
| services: | ||||
| @@ -14,11 +13,16 @@ go_import_path: github.com/coredns/coredns | ||||
| git: | ||||
|   depth: 3 | ||||
|  | ||||
| branches: | ||||
|   only: | ||||
|   - master | ||||
|  | ||||
| env: | ||||
|   - TEST_TYPE=coverage ETCD_VERSION=3.3.8 | ||||
|   - TEST_TYPE=integration ETCD_VERSION=3.3.8 | ||||
|   - TEST_TYPE=core ETCD_VERSION=3.3.8 | ||||
|   - TEST_TYPE=plugin ETCD_VERSION=3.3.8 | ||||
|   - TEST_TYPE=benchmark ETCD_VERSION=3.3.8 | ||||
|  | ||||
| # In the Travis VM-based build environment, IPv6 networking is not | ||||
| # enabled by default. The sysctl operations below enable IPv6. | ||||
| @@ -35,6 +39,7 @@ before_install: | ||||
|  | ||||
| before_script: | ||||
|   - docker run -d --net=host --name=etcd quay.io/coreos/etcd:v$ETCD_VERSION | ||||
|   - make godeps | ||||
|  | ||||
| script: | ||||
|   - make TEST_TYPE=$TEST_TYPE travis | ||||
|   | ||||
							
								
								
									
										29
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								Makefile
									
									
									
									
									
								
							| @@ -17,14 +17,6 @@ coredns: $(CHECKS) | ||||
| .PHONY: check | ||||
| check: presubmit core/zplugin.go core/dnsserver/zdirectives.go godeps | ||||
|  | ||||
| .PHONY: test | ||||
| test: check | ||||
| 	go test -race $(VERBOSE) ./test ./plugin/... | ||||
|  | ||||
| .PHONY: testk8s | ||||
| testk8s: check | ||||
| 	go test -race $(VERBOSE) -tags=k8s -run 'TestKubernetes' ./test ./plugin/kubernetes/... | ||||
|  | ||||
| .PHONY: godeps | ||||
| godeps: | ||||
| 	@ # Not vendoring these, so external plugins compile, avoiding: | ||||
| @@ -40,13 +32,15 @@ godeps: | ||||
| 	(cd $(GOPATH)/src/github.com/mholt/caddy              && git checkout -q v0.10.11) | ||||
| 	(cd $(GOPATH)/src/github.com/miekg/dns                && git checkout -q v1.0.8) | ||||
| 	(cd $(GOPATH)/src/github.com/prometheus/client_golang && git checkout -q v0.8.0) | ||||
| 	@ # for travis only, if this fails we don't care, but don't see benchmarks | ||||
| 	 go get -u golang.org/x/tools/cmd/benchcmp || true | ||||
|  | ||||
| .PHONY: travis | ||||
| travis: check | ||||
| travis: | ||||
| ifeq ($(TEST_TYPE),core) | ||||
| 	( cd request ; go test -v  -tags 'etcd' -race ./... ) | ||||
| 	( cd core ; go test -v  -tags 'etcd' -race  ./... ) | ||||
| 	( cd coremain go test -v  -tags 'etcd' -race ./... ) | ||||
| 	( cd coremain ; go test -v  -tags 'etcd' -race ./... ) | ||||
| endif | ||||
| ifeq ($(TEST_TYPE),integration) | ||||
| 	( cd test ; go test -v  -tags 'etcd' -race ./... ) | ||||
| @@ -66,6 +60,21 @@ ifeq ($(TEST_TYPE),coverage) | ||||
| 		fi; \ | ||||
| 	done | ||||
| endif | ||||
| ifeq ($(TEST_TYPE),benchmark) | ||||
| 	> new | ||||
| 	( cd plugin; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> new | ||||
| 	( cd request; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> new | ||||
| 	( cd core; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> new | ||||
| 	( cd coremain; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> new | ||||
| 	git checkout master | ||||
| 	> old | ||||
| 	( cd plugin; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> old | ||||
| 	( cd request; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> old | ||||
| 	( cd core; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> old | ||||
| 	( cd coremain; go test -run=NONE -bench=. -benchmem=true -tags 'etcd' ./... ) >> old | ||||
| 	if command -v benchcmp; then benchcmp old new ; fi | ||||
| 	git checkout - | ||||
| endif | ||||
|  | ||||
| core/zplugin.go core/dnsserver/zdirectives.go: plugin.cfg | ||||
| 	go generate coredns.go | ||||
|   | ||||
		Reference in New Issue
	
	Block a user