aboutsummaryrefslogtreecommitdiff
path: root/cnf
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2018-07-05 06:10:43 -0700
committerZac Medico <zmedico@gentoo.org>2018-07-09 22:03:53 -0700
commit84822ef7a21494d3f044c2ffa7b112e4d29665ab (patch)
tree0dc6caccac91b7c9fe2ee0aa9d3e77fb8e1a484f /cnf
parentGitSync: add key refresh retry (bug 660732) (diff)
downloadportage-84822ef7a21494d3f044c2ffa7b112e4d29665ab.tar.gz
portage-84822ef7a21494d3f044c2ffa7b112e4d29665ab.tar.bz2
portage-84822ef7a21494d3f044c2ffa7b112e4d29665ab.zip
rsync: quarantine data prior to verification (bug 660410)
Sync into a quarantine subdirectory, using the rsync --link-dest option to create hardlinks to identical files in the previous snapshot of the repository. If hardlinks are not supported, then show a warning message and sync directly to the normal repository location. If verification succeeds, then the quarantine subdirectory is synced to the normal repository location, and the quarantine subdirectory is deleted. If verification fails, then the quarantine directory is preserved for purposes of analysis. Even if verification happens to be disabled, the quarantine directory is still useful for making the repository update more atomic, so that it is less likely that normal repository location will be observed in a partially synced state. The new behavior may conflict with configurations that restrict the use of hardlinks, such as overlay filesystems. Therefore, users will have to set "sync-allow-hardlinks = no" in repos.conf if they have a configuration that prevents the use of hardlinks, but this should not be very common. Bug: https://bugs.gentoo.org/660410
Diffstat (limited to 'cnf')
-rw-r--r--cnf/repos.conf1
1 files changed, 1 insertions, 0 deletions
diff --git a/cnf/repos.conf b/cnf/repos.conf
index 352073cfd..419f6d118 100644
--- a/cnf/repos.conf
+++ b/cnf/repos.conf
@@ -6,6 +6,7 @@ location = /usr/portage
sync-type = rsync
sync-uri = rsync://rsync.gentoo.org/gentoo-portage
auto-sync = yes
+sync-allow-hardlinks = yes
sync-rsync-verify-jobs = 1
sync-rsync-verify-metamanifest = yes
sync-rsync-verify-max-age = 24