Does TC override properties used in the checkout rules?

I am trying to use the approach suggested by Pavel Sher for issue TW-5428.

If I specify the checkout rules for the subversion root in the form:




then I automatically get the agent requirement enforced to have svn.tag defined, so I cannot run the build on any of the agents. I want to supply this property using HTTP build triggering, so I define dummy svn.tag=XX in the project configuration and then run HTTP request:

 wget.exe http://myserver:8111/guestAuth/action.html?add2Queue=%PROJECT_ID%&


In the build parameters I see that svn.tag has the value I have supplied in the HTTP request and message “changed, original value XX”


Clean checkout (subversion) is done on the build agent, the build gets started but fails with message:


16:34:58]: [VCS Root: MYROOT_URL] checkout rules: tags/XX=>myroot; -:.; revision: 5941_2010/04/19 15:20:16 -0400

[16:34:58]: [Updating sources: Agent side checkout...] Failed to perform checkout on agent: org.tmatesoft.svn.core.SVNException: svn: Error during update from svn://subversion/REPONAME/tags/XX to E:\BuildAgent\work\3604f3c5fd2e6a88\myroot svn: URL 'svn://subversion/REPONAME/tags/XX' doesn't exist


Can this be done?



1 comment
Comment actions Permalink

Unfortunately this won't work. There are two problems with this approach. The first one, is that, if you specify some dummy parameter for svn.tag which does not correspond to existing path in repository, you will see configuration errors, because TeamCity still needs to collect changes for this combination of VCS root and checkout rules, but it can't do this in such setup.

The second problem is in TeamCity implementation. Currently, when changes are collected and checkout is performed, TeamCity takes parameters from build configuration settings and ignores all others. We hope to address some of these issues in the next major release of TeamCity (probably, in TeamCity 6.0).


Please sign in to leave a comment.