Print version string on startup from git describe

This commit is contained in:
Arti Zirk 2023-08-06 22:01:25 +03:00
parent fddac32cc7
commit 3f70299c36
2 changed files with 27 additions and 2 deletions

View File

@ -1,4 +1,13 @@
dev:
GOOS=linux GOARCH=arm64 go build .
.PHONY: all build build_arm64 dev
all: build
build:
go build -ldflags="-X main.Version=`git describe --dirty`" .
build_arm64:
GOOS=linux GOARCH=arm64 go build -ldflags="-X main.Version=`git describe --dirty`" .
dev: build_arm64
scp godoor workshopdoor:/tmp/
ssh workshopdoor 'mv -f /tmp/godoor ~/ && sudo systemctl restart godoor'

View File

@ -12,6 +12,7 @@ import (
"net/http"
"os"
"os/signal"
"runtime/debug"
"strconv"
"strings"
"sync"
@ -67,6 +68,20 @@ type OpenedTimestamp struct {
Closed *time.Time
}
var Commit = func() string {
if info, ok := debug.ReadBuildInfo(); ok {
for _, setting := range info.Settings {
if setting.Key == "vcs.revision" {
return setting.Value
}
}
}
return ""
}()
var Version string
var config Config
var globalLock sync.Mutex
var validUids ValidUids
@ -78,6 +93,7 @@ var openDoorTimestamps []OpenedTimestamp
func main() {
log.Printf("GoDoor ver: %s (%s)", Version, Commit)
ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt, syscall.SIGTERM)
defer cancel()