Quellcode durchsuchen

Build: Support SOURCE_DATE_EPOCH for reproducible builds (#18953)

If grafana is build from a non-git source a new timestamp is used every build which makes grafana binaries
non-reproducible.

Motivation: https://reproducible-builds.org
jelle van der Waa vor 6 Jahren
Ursprung
Commit
ce7a8dde83
1 geänderte Dateien mit 5 neuen und 0 gelöschten Zeilen
  1. 5 0
      build.go

+ 5 - 0
build.go

@@ -592,6 +592,11 @@ func getGitSha() string {
 }
 
 func buildStamp() int64 {
+	// use SOURCE_DATE_EPOCH if set.
+	if s, _ := strconv.ParseInt(os.Getenv("SOURCE_DATE_EPOCH"), 10, 64); s > 0 {
+		return s
+	}
+
 	bs, err := runError("git", "show", "-s", "--format=%ct")
 	if err != nil {
 		return time.Now().Unix()