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

Handle common files in RTC

Hello together,

I am in doubt about how to handle shared files in RTC.

We have projects which build not only their own files but also common files like interfaces.
These common files are used in other projects like in the picture below.



At the moment we would store these jar files on a public file server or network storage in order to import it during the build process.
Is there a better way to handle this in RTC?

0 votes



2 answers

Permanent link
You can try adding a new component, say comp_common. You can add your common files to this component and add it to each stream that needs it.

0 votes

Comments

If I would do that, every stream will get its own version of the component.
So if I want to add a new file to the component I can't make it available to all customer streams. The only possibility is to create a new baseline and change the component baseline in every stream to the new baseline.

Or am I misguided in that point of view?

When I understand you correct, you are wondering on how the changes to the archive component would flow to the customers stream? I think you have two options:
1. Change the configuration of the stream manually, i.e. for the component that has the jar files in it select the appropiate baseline and base your customer stream on that. For one or a few customer streams this seems feasible.
2. If you have more than a few customer streams you can think of a hierarchy of streams. Maybe the customer streams can have the archive component stream as a parent stream, than every new baseline of the archive component stream will be seen as an incoming change to the customer stream. With this, the team that is responsible for the customer stream can make a decision if or when the new archive will be accepted.

If you intend to update these files at the same time for everybody, that component can go in its own stream for common use. Everybody can create a workspace from that stream and will see the new updates whenever the component in that stream is updated.


Permanent link
You probably would be interested in work item Allow a stream to "share" a component from another stream. (127541) .  This would allow multiple streams to stay in sync on a shared component, without requiring accepts/delivers, flowing each workspace with multiple streams, or loading multiple workspaces into a sandbox.

I originally thought you were asking a different question ... i.e. whether you should stored derived (computed) files like .jar files under source control, and re-use them directly out of source control.   Clearly the source for the common components should be under source control, but should the derived files?  Downsides of storing the derived files under source control include:
- Derived files that are very big or that change rapidly can waste storage in the SCM system.
- You need to be careful that you are re-using the right versions of the derived files (the build system is usually better than the versioning system at managing this kind dependency analysis).

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: Aug 09 '13, 8:34 a.m.

Question was seen: 3,734 times

Last updated: Aug 12 '13, 6:27 p.m.

Confirmation Cancel Confirm