It's all about the answers!

Ask a question

Sharing Common Libraries using RTC

Rao Shines (15945162) | asked Oct 28 '14, 9:04 a.m.
edited Oct 28 '14, 9:05 a.m.
 We are using RTC 4.0.6 for source code management, now what we are looking is to share a common library  or a component across multiple RTC projects.  Having trouble understanding how we can execute this scenario using RTC?

Example - we have a common set of libraries (say V1) created and that has to be flowed to using and new RTC projects, in course of time the Libraries have been updated (say V2) and now this has to be flow to all existing Projects.

Question - Can we implement this using RTC, if not  do we have any other alternate.

Thanks in Advance

Accepted answer

permanent link
sam detweiler (12.5k6195201) | answered Oct 28 '14, 3:15 p.m.
there is also the non-source code approach.. 

the CommonLibrary-Stream, has a build which creates libraries in your repository system
(filesystem, nexus, articfactory or wherever), and the other components USE those apis
in build and test as libraries..   then you don't have streams at all.

when V2 of the libs are ready, they promote to the shared libraries
Rao Shines selected this answer as the correct answer

Geoffrey Clemm commented Oct 28 '14, 5:42 p.m.

Yes, my comment was only if they wanted to share source code from the common libraries with the project streams.   If they only need/want to share the derived libraries, then it is best to use some library management system for that sharing.

sam detweiler commented Oct 29 '14, 9:33 a.m. | edited Oct 29 '14, 9:33 a.m.

and if you are using maven (of gradle) you can use the pom to specify those shared libs as dependencies, and point to a repository system (nexus/artifactory) to retrieve the 'latest' or 'specific' version

One other answer

permanent link
Geoffrey Clemm (30.1k33035) | answered Oct 28 '14, 12:42 p.m.
I assume you are talking about the following scenario:
I have three streams: ProjectA-Stream, ProjectB-Stream, and CommonLibrary-Stream.
The CommonLibrary-Stream has components used by both ProjectA-Stream and ProjectB-Stream, and periodically, you want to flow baselines from CommonLibrary-Stream to both project streams.

The main question is whether you want to "push" those baselines to both streams at a given time, or whether you want each project to "pull" that snapshot into their project stream when they are ready to update.

In the "push" case, you could add the project streams as flow targets of the common library stream, and then use the Eclipse GUI to deliver the new snapshot to each of the project streams (or you could write a command script to do it, if you don't want to use the GUI).

In the "pull" case, you could add a new stream, the PublishedCommonLibrary-Stream, and you would then add the PublishedCommonLibrary-Stream as a flow target of each of the project streams.  When new baselines of the common library are ready to be used by the projects, deliver those baselines from the CommonLibrary-Stream to the PublishedCommonLibrary-Stream.  When a given project is ready to receive the recommended baselines from the common library, they would accept those baselines from the PublishedCommonLibrary-Stream.

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.