[yum-cvs] plugins/priorities
Tim Lauridsen
timlau at linux.duke.edu
Sun Jul 29 06:16:57 UTC 2007
plugins/priorities/priorities.py | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
New commits:
commit 535b6d4df6ee2815e4660ce05edf44a9910c49b5
Author: Tim Lauridsen <tla at rasmil.dk>
Date: Sun Jul 29 08:16:11 2007 +0200
Added full version support to priorities plugin (rhbz #249991)
Use 'check_versions=1' in priorities.conf to use full nerva check, insted of
the default na check.
diff --git a/plugins/priorities/priorities.py b/plugins/priorities/priorities.py
index 8efecf9..974834d 100644
--- a/plugins/priorities/priorities.py
+++ b/plugins/priorities/priorities.py
@@ -38,6 +38,10 @@
# priority for repositories is 99. The repositories with the lowest
# number have the highest priority.
#
+# If you do not want the plugin to override version checking:
+#
+# check_versions=1
+#
# Please report errors to Daniel de Kok <danieldk at pobox.com>
from yum.constants import *
@@ -46,13 +50,16 @@ from yum import config
import yum
check_obsoletes = False
+check_versions = False
requires_api_version = '2.1'
plugin_type = (TYPE_CORE,)
def config_hook(conduit):
global check_obsoletes
+ global check_versions
check_obsoletes = conduit.confBool('main', 'check_obsoletes', default=False)
+ check_versions = conduit.confBool('main', 'check_versions', default=False)
if yum.__version__ >= '2.5.0':
# New style : yum >= 2.5
config.RepoConf.priority = config.IntOption(99)
@@ -78,7 +85,10 @@ def exclude_hook(conduit):
for repo in allrepos:
if repo.enabled:
for po in conduit.getPackages(repo):
- key = "%s.%s" % (po.name,po.arch)
+ if check_versions:
+ key = "%s-%s:%s-%s.%s" % (po.name,po.epoch,po.ver,po.rel,po.arch)
+ else:
+ key = "%s.%s" % (po.name,po.arch)
if pkg_priorities.has_key(key) and pkg_priorities[key] < repo.priority:
conduit.delPackage(po)
cnt += 1
@@ -99,7 +109,10 @@ def exclude_hook(conduit):
def _pkglisttodict(pl, priority):
out = {}
for p in pl:
- key = "%s.%s" % (p.name,p.arch)
+ if check_versions:
+ key = "%s-%s:%s-%s.%s" % (p.name,p.epoch,p.ver,p.rel,p.arch)
+ else:
+ key = "%s.%s" % (p.name,p.arch)
out[key] = priority
return out
More information about the Yum-cvs-commits
mailing list