From 8f4f4bf1c717aef3b5639daac9edc5fb774c978c Mon Sep 17 00:00:00 2001 From: Alexander Sulfrian Date: Thu, 1 Nov 2012 00:06:17 +0100 Subject: Packages: add priority to sources and sort according to it --- src/lib/Server/Plugins/Packages/PackagesSources.py | 1 + src/lib/Server/Plugins/Packages/Source.py | 1 + 2 files changed, 2 insertions(+) (limited to 'src') diff --git a/src/lib/Server/Plugins/Packages/PackagesSources.py b/src/lib/Server/Plugins/Packages/PackagesSources.py index d399838ae..c713ccbba 100644 --- a/src/lib/Server/Plugins/Packages/PackagesSources.py +++ b/src/lib/Server/Plugins/Packages/PackagesSources.py @@ -61,6 +61,7 @@ class PackagesSources(Bcfg2.Server.Plugin.SingleXMLFileBacked, source = self.source_from_xml(xsource) if source is not None: self.entries.append(source) + sorted(self.entries, key=(lambda source: source.priority), reverse=True) def source_from_xml(self, xsource): """ create a *Source object from its XML representation in diff --git a/src/lib/Server/Plugins/Packages/Source.py b/src/lib/Server/Plugins/Packages/Source.py index 627ff561d..0882c8f95 100644 --- a/src/lib/Server/Plugins/Packages/Source.py +++ b/src/lib/Server/Plugins/Packages/Source.py @@ -73,6 +73,7 @@ class Source(Bcfg2.Server.Plugin.Debuggable): if self.url and not self.url.endswith("/"): self.url += "/" self.version = xsource.get('version', '') + self.priority = xsource.get('priority', 500) # build the set of conditions to see if this source applies to # a given set of metadata -- cgit v1.2.3-1-g7c22