diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4618c3bc209c2173a9952c3d08acf60de5113085..19e39390698bde9feb0ba2b750dddf3e415ce8c8 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,7 +8,9 @@ test: build: stage: build script: - - GOOS=freebsd go build -o invinoveritas + - commitHash=$(git rev-parse HEAD) + - now=$(date +%Y-%m-%d-%T) + - GOOS=freebsd go build -trimpath -tags "netgo osusergo timetzdata" -ldflags "-X main.commitHash=$commitHash -X main.buildTime=$now" -o invinoveritas artifacts: paths: - invinoveritas diff --git a/Makefile b/Makefile index 2d490b9777d85d021f335140a86a3c412233c984..e9f91e63dd524aaa7115bd03f01e5244b3c54c2f 100644 --- a/Makefile +++ b/Makefile @@ -1,2 +1,4 @@ run: - find . -name '*.go' -or -name '*.tpl' -or -path 'static/*' | entr -d -r go run . -debug + find . -name '*.go' -or -name '*.tpl' -or -path 'static/*' | \ + entr -d -r \ + go run -ldflags "-X main.commitHash=$(shell git rev-parse HEAD) -X main.buildTime=$(shell /bin/date +%Y-%m-%d-%T)" . -debug diff --git a/main.go b/main.go index 552268f3783c385527baf5e77f3ecca2c24a7577..b4f609691a5c94f1cc26e478cae1c291fe195d0d 100644 --- a/main.go +++ b/main.go @@ -26,6 +26,12 @@ var templateFS embed.FS //go:embed static/* var staticFS embed.FS +// Build info. Will be set by Gitlab pipeline. +var ( + commitHash string + buildTime string +) + func httpError(w http.ResponseWriter, r *http.Request, msg string, err error, status int) { if err != nil { msg += ": " + err.Error() @@ -128,6 +134,9 @@ func main() { logger = level.NewFilter(logger, filter) + level.Info(logger). + Log("commit_hash", commitHash, "buildTime", buildTime) + db, err := openDB(*dbPath, logger) if err != nil { logger.Log("error", err, "msg", "can't open DB") @@ -140,9 +149,9 @@ func main() { err = initDB(ctx, db) if err != nil { - logger.Log("wal_name", ql.WalName(*dbPath+".ql"), - "error", err, - "msg", "can't initalize DB") + level.Error(logger). + Log("wal_name", ql.WalName(*dbPath+".ql"), + "error", err, "msg", "can't initalize DB") os.Exit(1) }