extras-buildsys/server ArchJob.py,1.16.2.7,1.16.2.8
Daniel Williams (dcbw)
fedora-extras-commits at redhat.com
Thu Feb 16 18:39:03 UTC 2006
Author: dcbw
Update of /cvs/fedora/extras-buildsys/server
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv10857/server
Modified Files:
Tag: STABLE_0_4
ArchJob.py
Log Message:
2006-02-16 Dan Williams <dcbw at redhat.com>
* server/ArchJob.py
- Fix a few print statements that were using an unknown variable
to get the builder's address from
- Handle socket timeout errors
Index: ArchJob.py
===================================================================
RCS file: /cvs/fedora/extras-buildsys/server/ArchJob.py,v
retrieving revision 1.16.2.7
retrieving revision 1.16.2.8
diff -u -r1.16.2.7 -r1.16.2.8
--- ArchJob.py 16 Feb 2006 06:19:48 -0000 1.16.2.7
+++ ArchJob.py 16 Feb 2006 18:38:55 -0000 1.16.2.8
@@ -137,26 +137,37 @@
del attrdict
def _send_repo_unlocked(self):
+ success = False
try:
self._server.repo_unlocked(self.jobid)
+ success = True
except socket.error, e:
if not CommonErrors.canIgnoreSocketError(e):
- print "%s (%s/%s): [ %s ] Unknown error when signalling repo unlocked: '%s'" % (self.par_job.uid,
- self.par_job.package, self._target_dict['arch'], self.bci.address(), e)
+ print "%s (%s/%s): [ %s ] Unknown error sending repo unlocked: '%s'" % (self.par_job.uid,
+ self.par_job.package, self._target_dict['arch'], self.builder.address(), e)
+ except socket.timeout, e:
+ print "%s (%s/%s): [ %s ] Timeout sending repo unlocked: '%s'. Trying again." % (self.par_job.uid,
+ self.par_job.package, self._target_dict['arch'], self.builder.address(), e)
except xmlrpclib.ProtocolError, e:
pass
+ return success
def _dl_files(self):
files = []
+ success = False
try:
files = self._server.files(self.jobid)
+ success = True
except socket.error, e:
if not CommonErrors.canIgnoreSocketError(e):
- print "%s (%s/%s): [ %s ] Unknown error when getting file list: '%s'" % (self.par_job.uid,
- self.par_job.package, self._target_dict['arch'], self.bci.address(), e)
+ print "%s (%s/%s): [ %s ] Unknown error getting file list: '%s'" % (self.par_job.uid,
+ self.par_job.package, self._target_dict['arch'], self.builder.address(), e)
+ except socket.timeout, e:
+ print "%s (%s/%s): [ %s ] Timeout getting file list: '%s'" % (self.par_job.uid,
+ self.par_job.package, self._target_dict['arch'], self.builder.address(), e)
except xmlrpclib.ProtocolError, e:
pass
- return files
+ return (success, files)
def _is_done_status(self):
if self._status == 'done':
@@ -173,14 +184,16 @@
# if the builder is done, grab list of files to download
if self._builder_finished():
- self._set_status('downloading')
- for f in self._dl_files():
- uf = urllib.unquote(f)
- dl_dict = {}
- dl_dict[DL_STATUS] = STATUS_WAITING
- dl_dict[DL_RETRIES] = 0
- dl_dict[DL_WAIT_TIME] = 0
- self._downloads[uf] = dl_dict
+ (success, files) = self._dl_files()
+ if success:
+ self._set_status('downloading')
+ for f in files:
+ uf = urllib.unquote(f)
+ dl_dict = {}
+ dl_dict[DL_STATUS] = STATUS_WAITING
+ dl_dict[DL_RETRIES] = 0
+ dl_dict[DL_WAIT_TIME] = 0
+ self._downloads[uf] = dl_dict
def dl_callback(self, status, cb_data):
url = cb_data
@@ -245,8 +258,8 @@
undownloaded = True
dl_dict[DL_STATUS] = STATUS_INPROGRESS
except FileDownloader.FileNameException, e:
- print "%s (%s/%s): [ %s ] Bad file name error when getting %s: '%s'" % (self.par_job.uid,
- self.par_job.package, self._target_dict['arch'], self.bci.address(), url, e)
+ print "%s (%s/%s): [ %s ] Bad file name error getting %s: '%s'" % (self.par_job.uid,
+ self.par_job.package, self._target_dict['arch'], self.builder.address(), url, e)
# Hard error, we don't retry this one
dl_dict[DL_STATUS] = STATUS_ERROR
break
More information about the fedora-extras-commits
mailing list