aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-10-01 22:11:04 +0900
committerOphestra <cat@gensokyo.uk>2026-10-01 22:11:04 +0900
commitf5f6154952e8ab0161b60e85319441c0516af7d5 (patch)
tree0c08245f33b78839b77a9b6b522266cfba37f097
parent6a144f780ab62a5e6936d8f551dd03f51b11a153 (diff)
cmd/mbf/internal/ci: zero archive times
This keeps archives deterministic across multiple jobs. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--cmd/mbf/internal/ci/ci.go4
1 files changed, 4 insertions, 0 deletions
diff --git a/cmd/mbf/internal/ci/ci.go b/cmd/mbf/internal/ci/ci.go
index b19b6ca5..5c993a1b 100644
--- a/cmd/mbf/internal/ci/ci.go
+++ b/cmd/mbf/internal/ci/ci.go
@@ -120,6 +120,9 @@ func Follow(ctx context.Context, pathname string, w io.Writer) (err error) {
}
}
+// archiveTime is the hardcoded time written to every header time field.
+var archiveTime = time.Unix(0, 0)
+
// Path wraps the [pkg.Cache] pathname.
type Path string
@@ -288,6 +291,7 @@ func (p Path) writeSource(
if h, err = tar.FileInfoHeader(fi, linkname); err != nil {
return err
}
+ h.AccessTime, h.ChangeTime, h.ModTime = archiveTime, archiveTime, archiveTime
h.Name = path
var isVersion bool