Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I improve teamcity build performance?

I have the following steps for my project:

  1. build
  2. unit tests
  3. test coverage
  4. duplicates finder
  5. fx cop

Is there any way to make TeamCity execute 2-5 steps in parallel? Can I use several build agents for that?

like image 463
SiberianGuy Avatar asked Jan 23 '12 11:01

SiberianGuy


1 Answers

Yes. Assuming you have at least four build agents, you can do the following:

  1. Under MyProject, define 5 build configurations (Build, Unit Tests, etc).
  2. Edit build configurations 2-5, and define a new Trigger in Build Triggering (Choose Finish Build Trigger, and set it to run after a successful run of Build.
  3. Edit build configurations 2-5, and define a new Artifact dependency in Dependencies (Choose Add new artifact dependency, and choose the output of your Build configuration.

As long as you have agents available, the build configurations will run after a successful Build, each on its own agent.

On a side note, without knowing your specific project, i'd recommend doing that only if the whole process takes a really long time (lets say more than ~15 minutes), and you can spare those machines (virtual or not).

like image 162
seldary Avatar answered Nov 06 '22 05:11

seldary