[Buildbot] #3009: MultipleFileUpload fails on relative source paths

Buildbot trac trac at buildbot.net
Thu Nov 6 04:07:28 UTC 2014


#3009: MultipleFileUpload fails on relative source paths
---------------------+-----------------------
Reporter:  bgilbert  |      Owner:
    Type:  defect    |     Status:  new
Priority:  minor     |  Milestone:  undecided
 Version:  0.8.9     |   Keywords:
---------------------+-----------------------
 !MultipleFileUpload expects the `stat` !RemoteCommand to interpret paths
 relative to the workdir.  However, `stat` doesn't understand workdirs, and
 ignores the `workdir` argument passed by !MultipleFileUpload.

 As a result:

 - If a `slavesrc` is relative to the workdir, the master hits an
 exception:

 {{{
 Traceback (most recent call last):
   File ".../lib/python2.7/site-packages/twisted/internet/defer.py", line
 382, in callback
     self._startRunCallbacks(result)
   File ".../lib/python2.7/site-packages/twisted/internet/defer.py", line
 490, in _startRunCallbacks
     self._runCallbacks()
   File ".../lib/python2.7/site-packages/twisted/internet/defer.py", line
 577, in _runCallbacks
     current.result = callback(current.result, *args, **kw)
   File ".../lib/python2.7/site-packages/twisted/internet/defer.py", line
 1155, in gotResult
     _inlineCallbacks(r, g, deferred)
 --- <exception caught here> ---
   File ".../lib/python2.7/site-packages/twisted/internet/defer.py", line
 1097, in _inlineCallbacks
     result = result.throwExceptionIntoGenerator(g)
   File ".../lib/python2.7/site-packages/twisted/python/failure.py", line
 389, in throwExceptionIntoGenerator
     return g.throw(self.type, self.value, self.tb)
   File ".../lib/python2.7/site-packages/buildbot/steps/transfer.py", line
 482, in uploadSources
     result = yield self.startUpload(source, masterdest)
   File ".../lib/python2.7/site-packages/twisted/internet/defer.py", line
 577, in _runCallbacks
     current.result = callback(current.result, *args, **kw)
   File ".../lib/python2.7/site-packages/buildbot/steps/transfer.py", line
 440, in checkStat
     s = cmd.updates['stat'][-1]
 exceptions.KeyError: 'stat'
 }}}

 - If a `slavesrc` is relative to the builder's basedir, the
 !MultipleFileUpload fails.

 The workaround is to set the step's `workdir` to the empty string and
 specify `slavesrc` paths relative to the builder's basedir.

--
Ticket URL: <http://trac.buildbot.net/ticket/3009>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation


More information about the bugs mailing list