[Buildbot-devel] Discussion on source steps

Dmitry Nezhevenko dion at dion.org.ua
Mon Jun 6 18:38:24 UTC 2011


On Mon, Jun 06, 2011 at 10:33:06PM +0530, Pradeepkumar Gayam wrote:
> I believe almost all modern VCS has this facility. If they don't, we will
> implement a workaround even if we have to 6-7 all the commands. We are also
> planning to give an option to run custom command to clean the build
> directory.

This one looks very interesting for me. But maybe even better. Something like 
script-based VCS command that calls custom helper scripts for every
particular action:
- Cleanup
- Update to specific branch and revision.

Update one should also return somehow got_revision. Or maybe just third
command "get current revision". 

These two (or three) commands will probably cover all checkout-related stuff at 
once. At least for most of proprietary VCS-es.

If this is acceptable, I will probably try to contribute once interfaces
will be stable enough.

Another VCS-related issue I'm experiencing is some kind of timeout
handling. Usually VCS operations depends on network or any other factors
that may fail. In case of network-related issues (like temporary 30
seconds downtime) it sounds reasonable to not fail source step and just
wait a bit and retry. At the same time not every VCS error should cause
retry. Like "unable to authenticate" error or "repository not found" has
no changes to recover. 

Currently buildbot doesn't provide any way to handle this some "standard"
way and it's up to slave command to handle everything. I'm doing
everything on slave by reading CLI client exit code and sometimes parsing
of it's stderr. 

So since you are trying to refactor VCS stuff, maybe it's good idea to
think about this.

-- 
WBR, Dmitry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://buildbot.net/pipermail/devel/attachments/20110606/22e8b254/attachment.bin>


More information about the devel mailing list