From fd05ca492443c2c4ffa8936da97bb673c257f044 Mon Sep 17 00:00:00 2001 From: Florent Gluck <florent.gluck@hesge.ch> Date: Tue, 25 Mar 2025 14:43:56 +0100 Subject: [PATCH] Ongoing work: splitting up nexus-server and clients build mechanism into separate makefiles --- server/Makefile | 22 ++++++++++++++++++++++ server/buildversion/version.go | 15 +++++++++++++++ server/config/config.go | 4 +--- 3 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 server/Makefile create mode 100644 server/buildversion/version.go diff --git a/server/Makefile b/server/Makefile new file mode 100644 index 00000000..29794de2 --- /dev/null +++ b/server/Makefile @@ -0,0 +1,22 @@ +CURRENT_DATE=$(shell eval "date -u +'%Y-%m-%d at %H:%M:%S'") +GIT_COMMIT=$(shell eval "git rev-parse HEAD") +BUILD_FLAGS=-ldflags="-X 'gitedu.hesge.ch/flg_projects/nexus_vdi/nexus/server/buildversion.buildDate=$(CURRENT_DATE)' -X 'gitedu.hesge.ch/flg_projects/nexus_vdi/nexus/server/buildversion.gitCommit=$(GIT_COMMIT)'" +BUILD_DIR=build +SERVER_BINARY=nexus-server + +help: + @echo "Available targets:" + @echo " build Build nexus-server binaries" + @echo " clean Delete nexus-server binaries" + +$(BUILD_DIR): + @mkdir -p $@ + @echo "[Building nexus-server]" + @go build $(BUILD_FLAGS) -o $(BUILD_DIR)/$(SERVER_BINARY) + @echo "OK" + +clean: + @/bin/rm -rf $(BUILD_DIR) + @echo "OK" + +.PHONY: clean diff --git a/server/buildversion/version.go b/server/buildversion/version.go new file mode 100644 index 00000000..f23cfbe7 --- /dev/null +++ b/server/buildversion/version.go @@ -0,0 +1,15 @@ +package buildversion + +var ( + // These variables are replaced by ldflags at build time + gitCommit = "n/a" + buildDate = "n/a" +) + +func GitCommit() string { + return gitCommit +} + +func BuildDate() string { + return buildDate +} diff --git a/server/config/config.go b/server/config/config.go index 092d9278..68e6d848 100644 --- a/server/config/config.go +++ b/server/config/config.go @@ -7,11 +7,9 @@ import ( "strings" "sync" + "gitedu.hesge.ch/flg_projects/nexus_vdi/nexus/server/buildversion" "gitedu.hesge.ch/flg_projects/nexus_vdi/nexus/server/logger" "gitedu.hesge.ch/flg_projects/nexus_vdi/nexus/server/version" - - "gitedu.hesge.ch/flg_projects/nexus_vdi/nexus/common/buildversion" - "github.com/sirupsen/logrus" "gopkg.in/ini.v1" ) -- GitLab