I’m working with ClearCase 8 to test integration with my company’s software, and I will be using the client and server software on the same machine, so I don’t need the test VOBs I create to be accessible over the network. I’m trying to create a VOB on a local disk, rather than a network share, but I can’t seem to figure out how to do it, if it is even possible.
First, I tried just using a regular path, e.g.:
cleartool mkvob -tag \vobFoo C:\Users\Public\cc_vobs\vobFoo.vbs
cleartool: Error: storage directory must be in UNC style (e.g. \\host\share\...)
After finding this question, my next attempt was this:
cleartool mkvob -tag \vobFoo \\localhost\c$\Users\Public\cc_vobs\vobFoo.vbs
cleartool: Error: Attempt to get location information on "\\localhost\c$\Users\Public\cc_vobs\vobFoo.vbs" failed: Invalid argument.
I checked – typing \\localhost\c$\Users into the “Run…” menu does bring up the proper folder in Windows Explorer, so I don’t think it’s an issue with the loopback adapter.
I did find some references to the error message here and here, but neither seems applicable to my situation (I’m not using UNIX and ClearCase Doctor doesn’t give me the relevant error message)
Even after setting up a Windows share, this also failed:
cleartool mkvob -tag \vobFoo \\localhost\cc_vobs\vobFoo.vbs
cleartool: Error: Attempt to get location information on "\\localhost\cc_vobs\vobFoo.vbs" failed: Invalid argument.
The only way I could get the command to go through was to use the network host name with the share:
cleartool mkvob -tag \vobFoo \\hostname\cc_vobs\vobFoo.vbs
Is it simply not possible to setup a VOB in a local storage location like I’m trying to do? Or am I missing something?
I confirm that your UNC path cannot use localhost, but must start with the host name.
The reason is that the Vob storage path must be globally accessible, ie accessible from any computer (and localhost makes sense only from one computer).
The
cleartool mkvobman page includes:UNC (Uniform Naming Convention):
One way for you to have a local path (without having to define a share) is to use the
-stglocparameter, referring to the name of a pre-defined storage location (instead of-host -hpath -gpatharguments)See
cleartool mkstgloc(which defines storage locations for Vobs or Views).You can use a local path there.
-host -hpath -gpathwhen there is file system connectivity between the server storage location host and its clients.-ngpath -host -hpathwhen there is no file system connectivity between the server storage location host and its clients.So be careful if you do this (
-ngpathoption): your Vob won’t be accessible through dynamic views, only snapshot views.