It's all about the answers!

Ask a question

Can a build definition and Build Engine shared by multiple developers?


Rainy John (381226) | asked Sep 03 '13, 8:39 a.m.

Our project is having 20 developers and we are using C/C++ perspective.

We want each developer to do a personal build before delivering their change set to the stream.

Is it possible to manage the above scenario with a single Build Definition and Build Engine?

Which is the recommended way of doing?

One answer



permanent link
Jeff Care (1.0k3833) | answered Sep 03 '13, 8:53 a.m.
The short answer is yes, multiple developers can share a single build definition and build engine.

The longer answer is it depends. Build definitions should encapsulate everything you want to happen during a build. You can parametrize your build logic using build properties, thus making a single build definition more versatile, the trade-off being that it's more complicated for your developers to submit builds (as they have to edit the properties). The number of build engines necessary is more a question of capacity than anything else. Build engines can only service one build at a time. You can run multiple engines per-machine if you are careful, but the best practice is to run one JBE instance per machine.

Comments
Rainy John commented Sep 04 '13, 2:06 a.m.

Is it a recommended to have 20 build definitions, in the above case?


Rainy John commented Sep 04 '13, 3:20 a.m.

Can we have any number of build definitions based on the number of developers?

In the above case, is it OK to have 20 build definitions?


Henning Sternkicker commented Sep 04 '13, 5:50 a.m.
JAZZ DEVELOPER

Why do you want to have 20 build definitions for each developer, when the only difference is the different workspace? This can be achieved by selecting the own workspace in the private build. But if you want you can have as many build definitions as you want. As Jeff mentioned above you have to take more care on the Build engines. If the developers should be able to run more personal builds in parallel you should think about adding resources with build engines.


1
Jeff Care commented Sep 04 '13, 8:22 a.m.

I think there's a fundamental misunderstanding of what a build definition is.

Build definitions are how you tell RTC how to build your software: essentially how to invoke Ant, Maven or other command-line based program (e.g. make). You certainly don't need to have a build definition for each developer: they can each use the common build definition and execute a personal build with that definition. Doing a personal build will substitute the developers workspace for the workspace that is part of the build definition.

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.