[Buildbot-commits] [Buildbot] #2526: Un-started build steps with properties in descriptions fail
Buildbot trac
trac at buildbot.net
Wed Jul 3 00:13:01 UTC 2013
#2526: Un-started build steps with properties in descriptions fail
---------------------+-----------------------
Reporter: cmumford | Owner:
Type: defect | Status: new
Priority: major | Milestone: undecided
Version: 0.8.7p1 | Keywords:
---------------------+-----------------------
I have a set of build factories containing steps with descriptions which
access properties that fail with the following exception:
{{{
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line
576, in _runCallbacks
current.result = callback(current.result, *args, **kw)
File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line
828, in _cbDeferred
self.callback(self.resultList)
File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line
381, in callback
self._startRunCallbacks(result)
File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line
489, in _startRunCallbacks
self._runCallbacks()
--- <exception caught here> ---
File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line
576, in _runCallbacks
current.result = callback(current.result, *args, **kw)
File "/usr/lib/python2.7/dist-
packages/buildbot/status/web/waterfall.py", line 426, in call_content
brcounts, request, ctx)
File "/usr/lib/python2.7/dist-
packages/buildbot/status/web/waterfall.py", line 490, in
content_with_db_data
sourceEvents))
File "/usr/lib/python2.7/dist-
packages/buildbot/status/web/waterfall.py", line 743, in phase2
b = IBox(block[i]).getBox(request)
File "/usr/lib/python2.7/dist-
packages/buildbot/status/web/waterfall.py", line 173, in getBox
text = text[:]
exceptions.AttributeError: Interpolate instance has no attribute
'__getitem__'
}}}
Some observations:
1. Both Property() and Interpolate() fail.
2. These exceptions seem happen until the last step has started - they
synchronize access to avoid running more than one test on a slave.
3. The exception happens whether it's a predefined property (i.e.
buildnumber), or my custom property (test_build_num).
Steps to reproduce:
1. Expand the attached archive (bbtest.tgz)
2. Run "make start" to create and start the master/slaves.
3. Force a build of "Android Builder". The first build will fail as
expected (see bug #2524)
4. Force a second build of "Android Builder".
5. Wait 15 seconds. (the build takes 10, and each tester takes 6).
6. Reload the waterfall page.
If you continue to reload the page until the last tester has started then
the exception is not thrown and the property value is displayed correctly.
'''Note 1''': You can reset to a clean state easily by running "make
clean".
'''Note 2''': Switching to master.cfg.noprops will allow the tests to work
correctly, but without correct titles.
'''Note 3''': This config is slightly Linux centric (note /tmp dir usage).
--
Ticket URL: <http://trac.buildbot.net/ticket/2526>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation
More information about the Commits
mailing list