mirror of
https://gitea.com/gitea/act_runner.git
synced 2026-08-13 22:41:54 +02:00
chore: inject the version into main instead of a module path
The `-X` target carried the full module path in both the Makefile and .goreleaser.yaml, so any change to the module path silently turned the injection into a no-op and shipped a binary reporting "dev". Target `main.version` instead, which no longer names the module, and fail `make checks` when the injection stops taking effect. Assisted-by: Codet:GPT-5.1-Codex
This commit is contained in:
@@ -3,9 +3,15 @@
|
||||
|
||||
package ver
|
||||
|
||||
// go build -ldflags "-X gitea.com/gitea/runner/internal/pkg/ver.version=1.2.3"
|
||||
var version = "dev"
|
||||
|
||||
// SetVersion records the version injected into package main at build time.
|
||||
func SetVersion(v string) {
|
||||
if v != "" {
|
||||
version = v
|
||||
}
|
||||
}
|
||||
|
||||
func Version() string {
|
||||
return version
|
||||
}
|
||||
|
||||
@@ -11,3 +11,17 @@ func TestVersion(t *testing.T) {
|
||||
t.Errorf("Version() = %q, want %q", got, version)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSetVersion(t *testing.T) {
|
||||
t.Cleanup(func() { version = "dev" })
|
||||
|
||||
SetVersion("v1.2.3")
|
||||
if got := Version(); got != "v1.2.3" {
|
||||
t.Errorf("Version() = %q, want %q", got, "v1.2.3")
|
||||
}
|
||||
|
||||
SetVersion("")
|
||||
if got := Version(); got != "v1.2.3" {
|
||||
t.Errorf("Version() = %q, want %q", got, "v1.2.3")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user