diff options
author | Michael DeHaan <mdehaan@redhat.com> | 2007-11-29 17:38:22 -0500 |
---|---|---|
committer | Michael DeHaan <mdehaan@redhat.com> | 2007-11-29 17:38:22 -0500 |
commit | 248b28b0181d87069364a87f4762086206781d38 (patch) | |
tree | e6754d158c64db4447e810299e019ada481504b6 /cobbler/item_repo.py | |
parent | 4547a2759ce5369774676f16365492f14aad2392 (diff) | |
download | cobbler-248b28b0181d87069364a87f4762086206781d38.tar.gz cobbler-248b28b0181d87069364a87f4762086206781d38.tar.xz cobbler-248b28b0181d87069364a87f4762086206781d38.zip |
Apply Christophe's patch to enable yum priorities. Slightly tweaked to default to 99, not 200.
Diffstat (limited to 'cobbler/item_repo.py')
-rw-r--r-- | cobbler/item_repo.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/cobbler/item_repo.py b/cobbler/item_repo.py index 06d855fb..659e3a8b 100644 --- a/cobbler/item_repo.py +++ b/cobbler/item_repo.py @@ -33,6 +33,7 @@ class Repo(item.Item): self.name = None self.mirror = (None, '<<inherit>>')[is_subobject] self.keep_updated = ('y', '<<inherit>>')[is_subobject] + self.priority = (99, '<<inherit>>')[is_subobject] self.rpm_list = ("", '<<inherit>>')[is_subobject] self.createrepo_flags = ("-c cache", '<<inherit>>')[is_subobject] self.depth = 2 # arbitrary, as not really apart of the graph @@ -43,6 +44,7 @@ class Repo(item.Item): self.name = self.load_item(seed_data, 'name') self.mirror = self.load_item(seed_data, 'mirror') self.keep_updated = self.load_item(seed_data, 'keep_updated','y') + self.priority = self.load_item(seed_data, 'priority',99) self.rpm_list = self.load_item(seed_data, 'rpm_list') self.createrepo_flags = self.load_item(seed_data, 'createrepo_flags', '-c cache') self.arch = self.load_item(seed_data, 'arch') @@ -81,6 +83,18 @@ class Repo(item.Item): self.keep_updated = False return True + def set_priority(self,priority): + """ + Set the priority of the repository. 1= highest, 99=default + Only works if host is using priorities plugin for yum. + """ + try: + priority = int(str(priority)) + except: + raise CX(_("invalid priority level: %s") % priority) + self.priority = priority + return True + def set_rpm_list(self,rpms): """ Rather than mirroring the entire contents of a repository (Fedora Extras, for instance, @@ -135,6 +149,7 @@ class Repo(item.Item): 'name' : self.name, 'mirror' : self.mirror, 'keep_updated' : self.keep_updated, + 'priority' : self.priority, 'rpm_list' : self.rpm_list, 'createrepo_flags' : self.createrepo_flags, 'arch' : self.arch, @@ -146,6 +161,7 @@ class Repo(item.Item): buf = _("repo : %s\n") % self.name buf = buf + _("mirror : %s\n") % self.mirror buf = buf + _("keep updated : %s\n") % self.keep_updated + buf = buf + _("priority : %s\n") % self.priority buf = buf + _("rpm list : %s\n") % self.rpm_list buf = buf + _("createrepo_flags : %s\n") % self.createrepo_flags buf = buf + _("arch : %s\n") % self.arch @@ -175,6 +191,7 @@ class Repo(item.Item): 'mirror-name' : self.set_name, 'mirror' : self.set_mirror, 'keep-updated' : self.set_keep_updated, + 'priority' : self.set_priority, 'rpm-list' : self.set_rpm_list, 'createrepo-flags' : self.set_createrepo_flags } |