ClearCase Remote Client CLI

clearcase

I'm struggling with using ClearCase at my current job and it's a REAL pain, considering that we were using CVS last year.

I'm trying to make a build server that downloads the code from ClearCase, compiles it and generates all the distributions. The build server must be RHEL5 and the ClearCase server is a Windows machine, so I don't think using normal ClearCase client would be an option.

Is there any possible way of having a ClearCase CLI client that just downloads the code?

I'm looking into CCRC but it seems that has no CLI interface. I also looked into IBM page but it needs a "CCSHARED" dependency that I have no idea of where it could be. I installed CCRC for Linux and pointed to the install directory with no success:

german@Shakuras:/instaladores/linux/CCRCCLI$ ./rcleartool 

rcleartool>         

rcleartool> update

Exception in thread "main" java.lang.NoClassDefFoundError: javax/wvcm/WvcmException

    at com.ibm.rational.ccrc.cli.command.ClearWan.main(Unknown Source)

german@Shakuras:/instaladores/linux/CCRCCLI$ 

`

Best Solution

You are right: a Linux client would not be able to access VOB data on any Windows share.

A CCRC could help either: it is a web server with "web views": a special kind of snapshot view (which could be what you want since a snapshot view download files on its workspace).
Since the CCRC server need to access the VOB data... it cannot be a Linux one, but a Windows one.

The API seems a little buggy with a CCRC7.0.1, but with CCRC7.1 is is better:
You have in this thread an example of web view update.

        trace("Getting CM API provider");
        CcProvider provider = getProvider(CMServerUrl, login, password); 
        trace("Create pathname to update");
        File folder = testFile; 
        trace("Getting ressource location");
        StpLocation loc = provider.filePathLocation(Domain.CLEAR_CASE,folder); 
        trace("Creating view proxy");
        CcView myview = provider.ccView(loc); 
        trace("Doing view refresh");
        myview.doRefresh(flags, feedback); 
        trace("Refresh done");

Note: even if your Vob Server is 7.0.x, you still can install a CCRC 7.1 (it will be able ot access the data on a Vob Server 7.0.x)

Notebis: the page you mentioned does detail how to set the CCSHARED variable.

Related Question