[Buildbot-devel] New-style source steps - why commandComplete call is
vasslitvinov at pisem.net
vasslitvinov at pisem.net
Tue Jun 18 14:32:10 UTC 2013
Your explanation makes sense, and my code started working with new-style SVN when I overrode finished() instead of commandComplete() method, thanks!
Though the interface should be defined better IMHO as Buildbot is oriented on subclassing stuff that doesn't suit ones needs out of the box (at least that's my perception after some years of knowing Buildbot stuff).
Сбт 15 Июн 2013 22:59:49 +0400, Tom Prince написал:
vasslitvinov at pisem.net writes:
> It seems that all new-style source steps (at least SVN class I tried
> to use) are not calling commandComplete() method, they directly call
> .finish() or .failed(), what's the reason for that? Old-style SVN does
> call this method...
Well, the interface between `BuildStep` and its subclasses isn't really
well defeined, unfortunately. Most steps run a single remote command run
a single command on the slave, using `LoggingBuildStep.startCommand`
which calls
- `BuildStep.runCommand` to run the command
- `LoggingBuildStep.commandComplete` (amongh other things
- `BuildStep.finish` to end the step.
The old-style source steps are among these.
On the other, the new-style source steps run multiple commnds, so can't
use `LoggingBuildStep.startCommand`, but rather call
`BuildStep.runCommand` multiple times. Given this, it doesn't really
make sense to call `LoggingBuildStep.commandComplete`, since there isn't
a single remote command that gets executed.
Tom
--
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20130618/fc64bd2e/attachment.html>
More information about the devel
mailing list