From 372472b5f648bccb7c3045ccd5921b0082fd87bb Mon Sep 17 00:00:00 2001 From: Tonis Tiigi Date: Tue, 27 Aug 2019 17:42:32 -0700 Subject: [PATCH] archive: truncate modification time Signed-off-by: Tonis Tiigi --- archive/tar.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/archive/tar.go b/archive/tar.go index 3a1e77a7f..7ec465756 100644 --- a/archive/tar.go +++ b/archive/tar.go @@ -504,6 +504,12 @@ func (cw *changeWriter) HandleChange(k fs.ChangeKind, p string, f os.FileInfo, e hdr.Mode = int64(chmodTarEntry(os.FileMode(hdr.Mode))) + // truncate timestamp for compatibility. without PAX stdlib rounds timestamps instead + hdr.Format = tar.FormatPAX + hdr.ModTime = hdr.ModTime.Truncate(time.Second) + hdr.AccessTime = time.Time{} + hdr.ChangeTime = time.Time{} + name := p if strings.HasPrefix(name, string(filepath.Separator)) { name, err = filepath.Rel(string(filepath.Separator), name)