Dependent builds: avoid getting new sources?

Hi,

I'd like to use build dependencies as a means to segment various distinct parts of my build process. My project builds using maven. Currently, I have TeamCity set up like so:

1. a 'compile' build configuration, configured to run the 'clean' and 'compile' mvn goals

2. a 'derby test and package' configuration, which is dependent on #1 and runs the 'package' mvn goal (our tests run against Derby by default).

3. a 'hsqldb test' configuration, which is dependent on #2 and runs the 'test' goal with '-Ptest-hsqldb' (which tells our test environment to run against HSQLDB).

Ideally, when running steps 2 and 3, I'd like it if TeamCity would not get new sources, but instead would just use the sources from step 1. However, based on the logs, it looks like TeamCity fetches new sources every time it runs a build. Clearly, if configuration 2 were fired off on a different build agent than #1, this would be a problem. However, I am happy with the constraint that #2 must happen on the same agent as #1.

In other words, I'd like it if all my dependent builds could run in exactly the same environment. Is this possible?

Thanks,

-Patrick

2 comments
Comment actions Permalink

Hi,

In other words, I'd like it if all my dependent
builds could run in exactly the same environment. Is
this possible?


That's probably not the best way to state it. Really, I want my dependent builds would run against exactly the same svn revision number (+ whatever diffs I'm submitting via a remote run). So, if the dependent build was serviced by the same agent, then no svn work would be needed, but if the dependent build was serviced by a different agent, then I'm hoping that TeamCity will get the same svn revision number as was used in the triggering builds.

Additionally, it'd be nice if TeamCity didn't go all the way back to the svn server for each configuration, especially in the cases where the dependent configurations are running on the same server. I've already run into a dependent build failure caused by a svn hiccup.

Are either of these issues (in particular the first one) within the scope of TeamCity?

Thanks,

-Patrick

0
Comment actions Permalink

Given my statement that I'm ok with things happening on the same agent, this is easily done by setting the VCS checkout mode appropriately.

-Patrick

0

Please sign in to leave a comment.