summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorHarmen Stoppels <me@harmenstoppels.nl>2024-01-17 06:11:43 +0100
committerGitHub <noreply@github.com>2024-01-16 21:11:43 -0800
commit28675478ce7c8b3dc1d896829585493ce57cd420 (patch)
tree1a02816b35c3cf1441c341bed0e82ea4de72ec21 /var
parentc05ed2c31a8f30bf6665f0a0b86749b43b8c1508 (diff)
downloadspack-28675478ce7c8b3dc1d896829585493ce57cd420.tar.gz
spack-28675478ce7c8b3dc1d896829585493ce57cd420.tar.bz2
spack-28675478ce7c8b3dc1d896829585493ce57cd420.tar.xz
spack-28675478ce7c8b3dc1d896829585493ce57cd420.zip
Create reproducible tarballs in VCSFetchStrategy.archive (#42042)
Currently when you repeatedly create a bootstrap mirror that includes `clingo-bootstrap@spack` you get different tarballs every time. This is a general problem with mirroring checkouts from version control as tarballs. I think it's best to create tarballs ourselves, since that way we have more control over its contents. This PR ensures normalized tarballs like we do for build caches: - normalize file permissions (in fact that was already inspired by git, so should be good) - normalized file creation/modification time (timestamp 0) - uid / guid = 0, no usernames - normalized gzip header - dir entries are ordered by `(is_dir, name)` where strings are not locale aware ;) - POSIX says st_mode of symlinks is unspecified, so work around it and force mode to `0o755`
Diffstat (limited to 'var')
0 files changed, 0 insertions, 0 deletions