[Buildbot-devel] How to create sub-columns for each buildslaves under the same builders in waterfall
Marcus Lindblom
macke at yar.nu
Wed Jan 27 09:44:24 UTC 2010
On 2010-01-27 04:56, Charles Lepple wrote:
> On Jan 26, 2010, at 9:22 PM, Dustin J. Mitchell wrote:
>
>> I think your first question should be: is the waterfall the best view?
>>
>> For most purposes, either the console or one of the grids is the most
>> useful display - they show the things developers are interested in -
>> commits and builds - while omitting the things that developers don't
>> care for - relative timing of various steps.
>
> As someone who used to run Buildbot on a 30+ minute build, the
> waterfall is the most useful way to visualize *progress* on the build
> (rather than a simple pass/fail status). We used the individual step
> labels, as well as a custom status procedure that kept track of the
> last directory that the build process descended into.
I've been thinking to add some kind of progress to the grid or
one_box_per_build result. Like two progress bar, one that works on time
(estimation) and another that shows % of all steps completed.
I'm thinking something like Hudson's bars, in the boxes for each
builder: http://wiki.hudson-ci.org//download/attachments/753667/1.png
(Hudson has a rather slick UI I must say...)
> The build
> process also kept running after errors ("make -k"; not my decision) so
> this was the easiest way to see if a large chunk of code was being
> skipped over due to failed dependencies.
This is what we do as well, since we want to isolate errors as far as
possible, then it's a good idea to build as much as possible. I haven't
added a custom step that flags the build as failed as soon as errors
appear in the log though. That is probably a good thing to have when
running with -k (or similar.)
> I would agree that the waterfall is not the best place to start
> hacking if you are new to Buildbot and Python, but I also hope that
> the waterfall doesn't start to fall by the wayside just because there
> are a few more high-level summary views.
Not at all. The waterfall has its place, especially when debugging locks
or looking at detailed progress. But the code _is_ a big spaghetti pile,
although it might be slightly easier to work with in 0.8. (F.ex, I
didn't manage to extract all HTML from the python code there when
converting to jinja. More work there is welcome, so that one is able to
embellish that data.)
Also, as Dustin said, views that access a lot of Buildbot's stored data
are a bit slow, and the waterfall is one example. I suppose adding more
features is nice, but we might need to address the performance if we do
even more stuff here. (I'm seeing response times of 0.5-2 secs here
when I have three builders with a few hundred builds each. This is not
ok for public buildbots.) Some form of caching of generated html would
be nice to have here, so that the we only regenerate the boxes contents
if they actually changed. That'd keep the Waterfall from digging deep
into build-history every time.
Actually, I'm not sure the grid & console views are good performers
either...
/Marcus
More information about the devel
mailing list