buildbot/buildbot — pull request #515 by tardyp (2012-09-04 13:25:18+00:00)
Title: Reposource

repo: implement repo as a master driven source step
+ minor improvement and bugfixes on master side source steps

First code review request. The tests are passing, I need to test it in real world.

This commit reimplements the same feature and API
as repo from oldsource.py
The big difference is the test coverage that is now 98%,
and thus the maintainability of the code.
Most of the code is also now written in inline callbacks which adds
a lot of readability.

Additionnal features compared to oldsource.py:

- repo is now capable of importing patches to the manifest directory
This allows for gated-commit process to also verify that manifest patches
does not break the build
- better handling of tarball (automatic update on a weekly basis)
- support for repo sync -c, which speeds up a lot in very big projects
- better clobbering behaviour. The working directory is kept as much as
possible for obvious speed reasons