Path differences between ClearCase and RTC
Hi,
Were a windows environment investigating to use a synchronizer between our ClearCase UCM environment and RTC to allow some projects to work in RTC. Weve used ClearCase for a long time and as such have been using a lot of its features. We have hundreds of VOBs, some hold multiple components, in some cases the VOB is the component. We also use symbolic links. Now when we synchronize to RTC we run into some problems with our paths especially when building our software. The idea is that everything should build in the ClearCase environment where integration builds are run, but it should also be possible to run developer builds in the RTC workspace. Preferbly using the same build scripts. The major problems we run into are: - RTC doesnt know VOBs, it just imports the components. So when loading the workspace the VOB directories are no longer there. As a result builds fail. We can specify directories for each component to be load into in the workspace but due to the large number of components this is not a feasible workaround for our developers. - Symbolic links they do seem to work with RTC 3.0.1. on windows 7. However due to the problem stated above, the relative paths break when they point to a different VOB. Also ClearCase doesnt seem to care about the direction of the slashes. However when RTC creates them on a windows 7 machine, it uses the CC definition and Windows does care so hence they might not work as they were defined in the wrong way. (I know its now supposed to work on Windows, yet, but it seems like it doesa little) Our current idea for a work around is a pre-build script that moves around all the stuff in the workspace until it resembles the ClearCase directory structure. Does anyone recognize these challenges, are we missing something obvious, is our work around the most common solution? |
3 answers
Geoffrey Clemm (30.1k●3●30●35)
| answered Oct 12 '11, 12:08 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Issue 1: In 3.0.1, there is a checkbox for the build which says "include
the component name". Similarly, for loading via Eclipse, there is a form of the load command which includes the component name. In 3.5, there will be an enhancement to "load rules" which should let you handle this uniformly in both build loading and Eclipse loading (and I assume, with Visual Studio and command line loading as well). Issue 2: In RTC-3.0.1, symbolic links are only supported on Unix systems. Support for symbolic links on Windows 7 is being added in 3.5. Minimally, they will work in the Visual Studio client. I believe they will also work in the Eclipse client, but I'm not certain about that (see work item 141314). Cheers, Geoff On 10/11/2011 10:23 AM, ewillems wrote:
|
Issue 1: In 3.0.1, there is a checkbox for the build which says "include Yes for the component name we can get this to work... however in ClearCase our path looks like this: <VOB>\<component>\source\foo.c In our workspace, with the component name, it looks like this: <component>\source\foo.c As our build scripting expects the path to include the VOB tag it breaks. Is there a solution/work around for this? |
Geoffrey Clemm (30.1k●3●30●35)
| answered Oct 14 '11, 10:32 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Yes, if you are using UCM multi-component VOB's, then in 3.0.1, you will
have to manually create directories in your sandbox, corresponding to the VOB names. And then, you will need to use "Load as" instead of "Load" (in the Eclipse client), and then modify the "load path" to indicate that the component should be loaded in the appropriate VOB directory. The good news in the 3.5, this is all automated through the enhanced "Load Rule" support provided in 3.5. In 3.5, you will just use the "Load" operation, and specify the load rule file, which you can configure to automatically place a component in the appropriate VOB directory. Cheers, Geoff On 10/12/2011 5:23 AM, ewillems wrote: gmclemmwrote: |
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.