From 2c1b1ab38cd89c9dc2d6550f7d73cebcaa254d4a Mon Sep 17 00:00:00 2001 From: Slawomir Koszewski Date: Wed, 10 Dec 2025 15:05:08 +0100 Subject: [PATCH] Initial commit. --- .gitignore | 2 ++ build.sh | 13 +++++++++++++ go.mod | 3 +++ main.go | 9 +++++++++ version.go | 3 +++ 5 files changed, 30 insertions(+) create mode 100644 .gitignore create mode 100755 build.sh create mode 100644 go.mod create mode 100644 main.go create mode 100644 version.go diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7e12c9c --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Exclude binary files +test-version diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..5eb7929 --- /dev/null +++ b/build.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +VERSION=$(git describe --tags --always 2>/dev/null) + +if [ ! -z "$VERSION" ]; then + echo "Building version: $VERSION" + LDFLAGS="-ldflags \"-X main.Version=$VERSION\"" +else + echo "Building without version information" + LDFLAGS="" +fi + +go build $LDFLAGS -o test-version . diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..ad7dc50 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module version-go + +go 1.25.5 diff --git a/main.go b/main.go new file mode 100644 index 0000000..389e6a0 --- /dev/null +++ b/main.go @@ -0,0 +1,9 @@ +package main + +import "fmt" + +func main() { + fmt.Println("Hello, World!") + + fmt.Printf("The version is %s\n", Version) +} diff --git a/version.go b/version.go new file mode 100644 index 0000000..f6e9ded --- /dev/null +++ b/version.go @@ -0,0 +1,3 @@ +package main + +var Version string = "undefined"