Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

Build best practices for large systems

I have a question about build best practices working with large teams of developers and large amounts of source artifacts (gigbytes). Those systems commonly have large build scripts that each developer runs when they begin working on a change. And they reexecute the build script (or part of it) after making changes. Note this is a different process than simply letting Eclipse builders do all the work as we make changes.

A while back (may have even been the beta), the client had a build engine built into it we could launch and I believe it executed the build against the local sandbox. Now it looks like all builds execute on a server. So we pay the (potentially huge) cost of transferring all the source artifacts to a remote machine for each build. That process makes sense for team builds but not developer (aka personal) builds since our repo workspace already exists on the local machine.

One option is for each developer to run the build server locally and point it to their RTC sandbox. But we would have a build engine for every developer - doable, but not too elegant. Another solution is to run the build script outside of RTC, but that script is embedded w/ RTC-specific commands to interact with the repository. And another solution have scripts that separate the RTC commands from the system build commands so we can run the build locally outside the RTC client and not interact with the repository.

Am I missing something? Have any others bumped into this problem?

Many thanks.

0 votes



One answer

Permanent link
To my knowledge, the RTC build system never (in beta or otherwise) did a
build in the local sandbox. It has always queued up the build for
processing by some build engine. One reason is that the user wouldn't
be able to use that workspace/sandbox while the build was going on. You
don't pay a huge cost (except for the very first build) if you tell the
build not to delete all files before starting a new build ... in that
case, only the changed files will be loaded onto the build machine, and
it will be just as fast as incrementally loading files into the
developer's sandbox.

Cheers,
Geoff

harryk wrote:
I have a question about build best practices working with large teams
of developers and large amounts of source artifacts (gigbytes).
Those systems commonly have large build scripts that each developer
runs when they begin working on a change. And they reexecute the
build script (or part of it) after making changes. Note this is a
different process than simply letting Eclipse builders do all the
work as we make changes.

A while back (may have even been the beta), the client had a build
engine built into it we could launch and I believe it executed the
build against the local sandbox. Now it looks like all builds
execute on a server. So we pay the (potentially huge) cost of
transferring all the source artifacts to a remote machine for each
build. That process makes sense for team builds but not developer
(aka personal) builds since our repo workspace already exists on the
local machine.

One option is for each developer to run the build server locally and
point it to their RTC sandbox. But we would have a build engine for
every developer - doable, but not too elegant. Another solution is
to run the build script outside of RTC, but that script is embedded
w/ RTC-specific commands to interact with the repository. And
another solution have scripts that separate the RTC commands from the
system build commands so we can run the build locally outside the RTC
client and not interact with the repository.

Am I missing something? Have any others bumped into this problem?

Many thanks.

0 votes

Your answer

Register or log in 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.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details

Question asked: Oct 29 '09, 1:13 p.m.

Question was seen: 5,120 times

Last updated: Oct 29 '09, 1:13 p.m.

Confirmation Cancel Confirm