extras-buildsys/server BuilderManager.py,1.16,1.17
Daniel Williams (dcbw)
fedora-extras-commits at redhat.com
Sun Sep 11 03:29:36 UTC 2005
Author: dcbw
Update of /cvs/fedora/extras-buildsys/server
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv30933/server
Modified Files:
BuilderManager.py
Log Message:
2005-09-10 Dan Williams <dcbw at redhat.com>
* server/BuilderManager.py
- Fix python < 2.4 issues with sequence sort() call
Index: BuilderManager.py
===================================================================
RCS file: /cvs/fedora/extras-buildsys/server/BuilderManager.py,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- BuilderManager.py 9 Sep 2005 15:10:17 -0000 1.16
+++ BuilderManager.py 11 Sep 2005 03:29:34 -0000 1.17
@@ -127,6 +127,15 @@
def _builder_sort_func(self, builder):
return builder.free_slots()
+ def _builder_cmp_func(self, builder1, builder2):
+ if builder1.free_slots() > builder2.free_slots():
+ return 1
+ elif builder1.free_slots() == builder2.free_slots():
+ return 0
+ elif builder1.free_slots() < builder2.free_slots():
+ return -1
+ return 1
+
def process(self, paused):
self._have_work = False
@@ -152,7 +161,12 @@
print "Appending builder %s" % builder.address()
# Use the builder with the most free build slots
- builder_list.sort(key=self._builder_sort_func, reverse=True)
+ if sys.version_info[:3] >= (2, 4, 0):
+ builder_list.sort(key=self._builder_sort_func, reverse=True)
+ else:
+ builder_list.sort(self._builder_cmp_func)
+ builder_list.reverse()
+
for builder in builder_list:
try:
job = builder.start_job(parent, req['target_dict'], req['srpm_url'])
More information about the fedora-extras-commits
mailing list