From e9a1b2945845bfd1530d2649b6a15b352e4307ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Ovejero?= Date: Sun, 19 Jan 2025 15:09:18 +0100 Subject: [PATCH] ci: Specify commit and build time via linker flags --- Dockerfile | 4 +++- Makefile | 10 +++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index 4e7638f..5a242c3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,7 +6,9 @@ COPY . ./ ENV CGO_ENABLED=1 RUN apk add --no-cache git build-base sqlite RUN go mod download -RUN go build -o bin cmd/server/main.go +RUN BUILD_TIME=$(date +"%Y-%m-%dT%H:%M:%S%z") && \ + GIT_COMMIT=$(git describe --always --dirty) && \ + go build -ldflags="-s -X main.commitSha=$GIT_COMMIT -X main.buildTime=$BUILD_TIME" -o bin cmd/server/main.go FROM alpine:latest RUN mkdir /root/.n8n-shortlink diff --git a/Makefile b/Makefile index 597ba3f..6950376 100644 --- a/Makefile +++ b/Makefile @@ -3,6 +3,10 @@ HOME_DIR := $(shell echo $$HOME) DB_PATH := $(HOME_DIR)/.n8n-shortlink/n8n-shortlink.sqlite +CURRENT_TIME = $(shell date +"%Y-%m-%dT%H:%M:%S%z") +GIT_DESCRIPTION = $(shell git describe --always --dirty) +LINKER_FLAGS = '-s -X main.commitSha=${GIT_DESCRIPTION} -X main.buildTime=${CURRENT_TIME}' + help: @echo "Commands:" @sed -n 's/^##//p' $(MAKEFILE_LIST) @@ -13,7 +17,7 @@ help: ## run: Build and run binary run: - go run cmd/server/main.go + go run -ldflags=${LINKER_FLAGS} cmd/server/main.go .PHONY: run ## live: Run binary with live reload @@ -59,10 +63,6 @@ test/watch: # build # ------------ -CURRENT_TIME = $(shell date +"%Y-%m-%dT%H:%M:%S%z") -GIT_DESCRIPTION = $(shell git describe --always --dirty) -LINKER_FLAGS = '-s -X main.commitSha=${GIT_DESCRIPTION} -X main.buildTime=${CURRENT_TIME}' - ## build: Build binary, burning in commit SHA and build time build: go build -ldflags=${LINKER_FLAGS} -o bin cmd/server/main.go