version.go 938 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package ver
  2. /*
  3. Support edit version relative information dynamically.
  4. 1. When you build your main project with:
  5. `go build -ldflags="-w -X 'git.wenlab.co/joe/kettle/ver.Version=$(VER)' \
  6. -X 'git.wenlab.co/joe/kettle/ver.Date=$(shell date +"%Y-%m-%dT%H:%M:%S")' \
  7. -X 'git.wenlab.co/joe/kettle/ver.Branch=$(shell git branch --show-current)' \
  8. -X 'git.wenlab.co/joe/kettle/ver.Commit=$(shell git rev-parse HEAD)' \
  9. -X 'git.wenlab.co/joe/kettle/ver.GoVersion=$(shell go version)' \
  10. -X 'git.wenlab.co/joe/kettle/ver.Tag=$(shell git describe --tags --always --dirty)'"`
  11. 2. At starting of your project:
  12. ver.PrintVersion()
  13. */
  14. import (
  15. "fmt"
  16. )
  17. var (
  18. Version = "v0.0.1"
  19. Date = "2021-01-03"
  20. Branch = "master"
  21. Commit = "commitid"
  22. GoVersion = "1.17"
  23. Tag = "tag"
  24. )
  25. func Print() {
  26. fmt.Printf(`Version: %v
  27. BuildDate: %v
  28. Branch: %v
  29. CommitID: %v
  30. Go: %v
  31. Tag: %v
  32. `, Version, Date, Branch, Commit, GoVersion, Tag)
  33. }