chore: refresh gramsrv public release
This commit is contained in:
parent
75cebe8dbf
commit
70b6820474
1274 changed files with 378751 additions and 59919 deletions
54
cmd/telesrv/buildinfo.go
Normal file
54
cmd/telesrv/buildinfo.go
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
package main
|
||||
|
||||
import "runtime/debug"
|
||||
|
||||
var (
|
||||
gitCommit = ""
|
||||
gitBranch = ""
|
||||
gitTreeState = ""
|
||||
buildTime = ""
|
||||
)
|
||||
|
||||
type buildMetadata struct {
|
||||
Commit string
|
||||
Branch string
|
||||
TreeState string
|
||||
BuildTime string
|
||||
GoVersion string
|
||||
}
|
||||
|
||||
func currentBuildMetadata() buildMetadata {
|
||||
meta := buildMetadata{
|
||||
Commit: valueOrUnknown(gitCommit),
|
||||
Branch: valueOrUnknown(gitBranch),
|
||||
TreeState: valueOrUnknown(gitTreeState),
|
||||
BuildTime: valueOrUnknown(buildTime),
|
||||
}
|
||||
if info, ok := debug.ReadBuildInfo(); ok {
|
||||
meta.GoVersion = info.GoVersion
|
||||
settings := map[string]string{}
|
||||
for _, setting := range info.Settings {
|
||||
settings[setting.Key] = setting.Value
|
||||
}
|
||||
if meta.Commit == "unknown" {
|
||||
meta.Commit = valueOrUnknown(settings["vcs.revision"])
|
||||
}
|
||||
if meta.TreeState == "unknown" {
|
||||
switch settings["vcs.modified"] {
|
||||
case "true":
|
||||
meta.TreeState = "dirty"
|
||||
case "false":
|
||||
meta.TreeState = "clean"
|
||||
}
|
||||
}
|
||||
}
|
||||
meta.GoVersion = valueOrUnknown(meta.GoVersion)
|
||||
return meta
|
||||
}
|
||||
|
||||
func valueOrUnknown(v string) string {
|
||||
if v == "" {
|
||||
return "unknown"
|
||||
}
|
||||
return v
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue