extras-buildsys/server Builder.py,1.20.2.7,1.20.2.8

Daniel Williams (dcbw) fedora-extras-commits at redhat.com
Sun Feb 19 06:30:22 UTC 2006


Author: dcbw

Update of /cvs/fedora/extras-buildsys/server
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv827/server

Modified Files:
      Tag: STABLE_0_4
	Builder.py 
Log Message:
2006-02-19  Dan Williams  <dcbw at redhat.com>

    * server/Builder.py
        - Fix mistaken occurances of self.address -> self._address
        - Print a message when errors occur starting new jobs on builders




Index: Builder.py
===================================================================
RCS file: /cvs/fedora/extras-buildsys/server/Builder.py,v
retrieving revision 1.20.2.7
retrieving revision 1.20.2.8
diff -u -r1.20.2.7 -r1.20.2.8
--- Builder.py	24 Jan 2006 13:12:56 -0000	1.20.2.7
+++ Builder.py	19 Feb 2006 06:30:15 -0000	1.20.2.8
@@ -124,11 +124,11 @@
         except (socket.error, socket.timeout, OpenSSL.SSL.SysCallError, OpenSSL.SSL.Error, xmlrpclib.ProtocolError):
             pass
         except xmlrpclib.Fault, e:
-            print "Builder Error (%s) in _get_num_slots(): builder replied '%s'" % (self.address, e)
+            print "Builder Error (%s) in _get_num_slots(): builder replied '%s'" % (self._address, e)
         return num_slots
 
     def _building_jobs(self):
-        bjc = BuildingJobsCheck(self._server, self.address)
+        bjc = BuildingJobsCheck(self._server, self._address)
 
         curtime = time.time()
         bjc.start()
@@ -159,7 +159,7 @@
         except (socket.error, socket.timeout, OpenSSL.SSL.SysCallError, OpenSSL.SSL.Error, xmlrpclib.ProtocolError):
             alive = False
         except xmlrpclib.Fault, e:
-            print "Builder Error (%s) in _ping_builder(): builder replied '%s'" % (self.address, e)
+            print "Builder Error (%s) in _ping_builder(): builder replied '%s'" % (self._address, e)
             alive = False
         return (alive, target_list)
 
@@ -207,14 +207,17 @@
         try:
             # Builder will return jobid of 0 if it can't start the job for some reason
             jobid = self._server.start_new_job(target_dict, srpm_url)
-        except (socket.error, socket.timeout, OpenSSL.SSL.SysCallError, OpenSSL.SSL.Error, xmlrpclib.ProtocolError):
-            jobid = 0
-        except xmlrpclib.Fault, e:
-            print "Builder Error (%s) in start_job(): builder replied '%s'" % (self.address, e)
+        except (socket.error, socket.timeout, OpenSSL.SSL.SysCallError, \
+                OpenSSL.SSL.Error, xmlrpclib.ProtocolError, xmlrpclib.Fault), e:
+            error_class = str(e.__class__)
+            error_string = str(e)
+            jobarch = target_dict['arch']
+            print "%s (%s/%s): %s exception '%s' starting job on %s" % (par_job.uid, \
+                par_job.package, jobarch, error_class, error_string, \
+                self._address)
             # Check for hard errors, for which we suspend the builder
-            error = str(e)
-            if string.find(error, "OSError") >= 0 and string.find(error, "Errno") >= 0:
-                self._handle_builder_suspend(SUSPEND_HARD_ERROR, error)
+            if string.find(error_string, "OSError") >= 0 and string.find(error_string, "Errno") >= 0:
+                self._handle_builder_suspend(SUSPEND_HARD_ERROR, error_string)
             time.sleep(0.5)
             jobid = 0
 




More information about the scm-commits mailing list