remote run with custom checkout


I have a question about configuring TC for performing remote run/delayed commits with custom checkout.

As far as I understand, If configured to perform agent-side SVN checkout, the following happens:

This scheme doesn't work for me because frequent checkouts of the whole project (>800Mb) is not an option, so I'd like to implement something like this instead:

I can implement 'svn update' ans 'svn remove&cleanup' steps myself, but I at least need TC to call my custom task before applying remote changes. Is it possible? Or maybe there's another way?



Hi Konstantin,

before any build sources are being updated to the requested version if working directory is not empty, and they are being checked out (to this version) if working directory is empty.

For personal build changed files overrides current copies, but after the build all changes should be reverted automatically.

If this does not work please let me know. Otherwise clean check out has to work for the first checkout only (if you didn't enable "clean sources" option). Previous build status doesn't affect checkout process, actual commit takes place on the user computer (were IDEA is installed and where pre-tested commit was invoked from).


Hi Olesya,

I guess my sources were cleaned because I've changed something in the build configuration. I've just checked it - failed build doesn't affect it, but making any change to configuration forces clean checkout. Is there any way to override it? I don't quite understand why changing, say, "Runner:Ant -> Build working directory" makes checkout necessary.

Could you please also describe how "checkout mode: do not checkout automatically" plays with remote run?
What happens if aget's VCS view is outdated and personal changes clash with HEAD state? If build script performs VCS update itself, it will get a conflict, and it is then script's responsibility to mark build as failed and perform cleanup, right?

Thanks for your replies


Hi Konstantin,

pre-tested commit doesn't work with manual checkout mode.
If you change working (== checkout) directory, checkout location is changed and clean checkout becomes quite reasonable. Also any change in vcs connection settings or checkout rules causes re-checkout. There is no possibility (at the moment) change the working directory only.


Hi Olesya,

Thanks, I just thought that working directory is CWD (in the sense of for the Ant process in my case.

BTW, it seems that it is impossible to specify it, Ant's CWD is always set to build working directory.

I think documentation must be a bit more clear, because there's Agent working directory, "project root directory" mentioned in 'path to a build.xml' and "Build working directory", it isn't obvious which stands for what.


Please sign in to leave a comment.