From 8a96cb07d4bbc38a93969c73a07f125735533a8f Mon Sep 17 00:00:00 2001 From: Xevion Date: Mon, 23 Jun 2025 04:30:23 -0500 Subject: [PATCH] feat: include git commit & build date information in builds --- cmd/main.go | 8 ++++++-- tasks/Taskfile_linux.yml | 2 +- tasks/Taskfile_windows.yml | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/cmd/main.go b/cmd/main.go index de01ad6..d7fc757 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -11,7 +11,11 @@ import ( "ha-tray/internal/service" ) -var Version = "dev" +var ( + Version = "dev" + Commit = "" + BuildDate = "" +) func main() { logger, logFile, err := setupLogging() @@ -21,7 +25,7 @@ func main() { defer logFile.Sync() defer logFile.Close() - logger.Info("HATray started", "version", Version) + logger.Info("HATray started", "version", Version, "commit", Commit, "built", BuildDate) defer func() { if r := recover(); r != nil { diff --git a/tasks/Taskfile_linux.yml b/tasks/Taskfile_linux.yml index 96b4108..5b2bf84 100644 --- a/tasks/Taskfile_linux.yml +++ b/tasks/Taskfile_linux.yml @@ -6,7 +6,7 @@ vars: tasks: build: cmds: - - go build -o ./bin/{{.BINARY_NAME}} ./cmd/main.go + - go build -ldflags "-X main.Version=$(cat VERSION.txt) -X main.Commit=$(git rev-parse --short HEAD) -X 'main.BuildDate=$(date -u +%Y-%m-%dT%H:%M:%SZ)'" -o ./bin/{{.BINARY_NAME}} ./cmd/main.go service: desc: "Install the service" diff --git a/tasks/Taskfile_windows.yml b/tasks/Taskfile_windows.yml index 670acf7..36f4d1d 100644 --- a/tasks/Taskfile_windows.yml +++ b/tasks/Taskfile_windows.yml @@ -6,7 +6,7 @@ vars: tasks: build: cmds: - - go build -ldflags "-X main.Version=$(Get-Content VERSION.txt)" -o ./bin/{{.BINARY_NAME}} ./cmd/main.go + - go build -ldflags "-X main.Version=$(Get-Content VERSION.txt) -X main.Commit=$(git rev-parse --short HEAD) -X 'main.BuildDate=$(Get-Date -Format yyyy-MM-ddTHH:mm:ssZ)'" -o ./bin/{{.BINARY_NAME}} ./cmd/main.go service: desc: "Install the service"