mirror of
				https://github.com/coredns/coredns.git
				synced 2025-10-30 17:53:21 -04:00 
			
		
		
		
	Add git commit to the version output. (#900)
Now the output would be:
```
 ./coredns -version
CoreDNS-010
linux/amd64, go1.8, 241e3db
```
In case the local file has been modified, then the output would be (with --dirty):
```
 ./coredns -version
CoreDNS-010
linux/amd64, go1.8, 241e3db-dirty
```
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
			
			
This commit is contained in:
		
							
								
								
									
										4
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								Makefile
									
									
									
									
									
								
							| @@ -1,3 +1,5 @@ | |||||||
|  | GITCOMMIT     := $(shell git describe --dirty --always) | ||||||
|  |  | ||||||
| BUILD_VERBOSE := -v | BUILD_VERBOSE := -v | ||||||
|  |  | ||||||
| TEST_VERBOSE := -v | TEST_VERBOSE := -v | ||||||
| @@ -8,7 +10,7 @@ all: coredns | |||||||
| # TODO: Add .go file dependencies. | # TODO: Add .go file dependencies. | ||||||
| .PHONY: coredns | .PHONY: coredns | ||||||
| coredns: check godeps | coredns: check godeps | ||||||
| 	CGO_ENABLED=0 go build $(BUILD_VERBOSE) -ldflags="-s -w" | 	CGO_ENABLED=0 go build $(BUILD_VERBOSE) -ldflags="-s -w -X github.com/coredns/coredns/coremain.gitCommit=$(GITCOMMIT)" | ||||||
|  |  | ||||||
| .PHONY: deps | .PHONY: deps | ||||||
| deps: core/zmiddleware.go core/dnsserver/zdirectives.go godeps | deps: core/zmiddleware.go core/dnsserver/zdirectives.go godeps | ||||||
|   | |||||||
| @@ -38,6 +38,7 @@ ARCH:=$(shell uname -m) | |||||||
| GITHUB:=coredns | GITHUB:=coredns | ||||||
| DOCKER:=coredns | DOCKER:=coredns | ||||||
| DOCKER_IMAGE_NAME:=$(DOCKER)/$(NAME) | DOCKER_IMAGE_NAME:=$(DOCKER)/$(NAME) | ||||||
|  | GITCOMMIT:=$(shell git describe --dirty --always) | ||||||
|  |  | ||||||
| all: | all: | ||||||
| 	@echo Use the 'release' target to start a release | 	@echo Use the 'release' target to start a release | ||||||
| @@ -66,17 +67,17 @@ build: build-arm build-darwin build-linux | |||||||
| .PHONY: build-linux | .PHONY: build-linux | ||||||
| build-linux: | build-linux: | ||||||
| 	@echo Building: linux $(VERSION) | 	@echo Building: linux $(VERSION) | ||||||
| 	mkdir -p build/Linux      && CGO_ENABLED=0 GOOS=linux             go build -ldflags="-s -w" -o build/Linux/$(NAME) | 	mkdir -p build/Linux      && CGO_ENABLED=0 GOOS=linux             go build -ldflags="-s -w -X github.com/coredns/coredns/coremain.gitCommit=$(GITCOMMIT)" -o build/Linux/$(NAME) | ||||||
|  |  | ||||||
| .PHONY: build-darwin | .PHONY: build-darwin | ||||||
| build-darwin: | build-darwin: | ||||||
| 	@echo Building: darwin $(VERSION) | 	@echo Building: darwin $(VERSION) | ||||||
| 	mkdir -p build/Darwin     && CGO_ENABLED=0 GOOS=darwin            go build -ldflags="-s -w" -o build/Darwin/$(NAME) | 	mkdir -p build/Darwin     && CGO_ENABLED=0 GOOS=darwin            go build -ldflags="-s -w -X github.com/coredns/coredns/coremain.gitCommit=$(GITCOMMIT)" -o build/Darwin/$(NAME) | ||||||
|  |  | ||||||
| .PHONY: build-arm | .PHONY: build-arm | ||||||
| build-arm: | build-arm: | ||||||
| 	@echo Building: arm $(VERSION) | 	@echo Building: arm $(VERSION) | ||||||
| 	mkdir -p build/Linux/Arm  && CGO_ENABLED=0 GOOS=linux GOARCH=arm  go build -ldflags="-s -w" -o build/Linux/Arm/$(NAME) | 	mkdir -p build/Linux/Arm  && CGO_ENABLED=0 GOOS=linux GOARCH=arm  go build -ldflags="-s -w -X github.com/coredns/coredns/coremain.gitCommit=$(GITCOMMIT)" -o build/Linux/Arm/$(NAME) | ||||||
|  |  | ||||||
|  |  | ||||||
| .PHONY: tar | .PHONY: tar | ||||||
|   | |||||||
| @@ -168,7 +168,7 @@ func showVersion() { | |||||||
|  |  | ||||||
| // versionString returns the CoreDNS version as a string. | // versionString returns the CoreDNS version as a string. | ||||||
| func versionString() string { | func versionString() string { | ||||||
| 	return fmt.Sprintf("%s-%s\n", caddy.AppName, caddy.AppVersion) | 	return fmt.Sprintf("%s-%s\n%s/%s, %s, %s\n", caddy.AppName, caddy.AppVersion, runtime.GOOS, runtime.GOARCH, runtime.Version(), gitCommit) | ||||||
| } | } | ||||||
|  |  | ||||||
| // setVersion figures out the version information | // setVersion figures out the version information | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user