From 8a072e707ee4e5bbf0ac3b77eb426428f2d6b308 Mon Sep 17 00:00:00 2001
From: wyrie <wyrie@ispconfig3>
Date: Wed, 20 Jan 2010 08:24:27 -0500
Subject: [PATCH] Fixed: FS#1034 - Gentoo portage sync too frequent
---
server/mods-available/monitor_core_module.inc.php | 22 +++++++++++++++++++++-
1 files changed, 21 insertions(+), 1 deletions(-)
diff --git a/server/mods-available/monitor_core_module.inc.php b/server/mods-available/monitor_core_module.inc.php
index 642395e..0e3e6df 100644
--- a/server/mods-available/monitor_core_module.inc.php
+++ b/server/mods-available/monitor_core_module.inc.php
@@ -533,7 +533,27 @@
/*
* first update the portage tree
*/
- shell_exec('emerge --sync --quiet');
+
+ // In keeping with gentoo's rsync policy, don't update to frequently (every four hours - taken from http://www.gentoo.org/doc/en/source_mirrors.xml)
+ $do_update = true;
+ if (file_exists('/usr/portage/metadata/timestamp.chk'))
+ {
+ $datetime = file_get_contents('/usr/portage/metadata/timestamp.chk');
+ $datetime = trim($datetime);
+
+ $dstamp = strtotime($datetime);
+ if ($dstamp)
+ {
+ $checkat = $dstamp + 14400; // + 4hours
+ if (mktime() < $checkat) {
+ $do_update = false;
+ }
+ }
+ }
+
+ if ($do_update) {
+ shell_exec('emerge --sync --quiet');
+ }
/*
* Then test the upgrade.
--
Gitblit v1.9.1