[Anthill] VSS help needed
Marcio Marchini
marcio at bedarra.com
Tue Nov 22 10:28:19 CST 2005
Brian,
Your patch seems to be missing the open quote before the cd in
getCommandInit.pgl
The way I patched mine is in the attached zip.
Unfortunately the patch makes no difference regarding the build hanging
forever. And it cause that problem with spaces, so I am not sure it is
the way to go.
I will send another email to the list with a better subject about the
build hanging forever.
marcio
Marcio Marchini wrote:
> Brian,
>
> The build was "hanging" forever in AnthillOS without the patch
> (would never leave the queue, showing "being built" forever). So, I
> decided to give your quote patch a try, to see if it would fix it
> (remember, I no longer have spaces in teh UNC path, and was running the
> original pagelets again). Well, it turns out that now I get an error:
>
> 11:00:47:061 [Thread - AnthillBuildDaemon] DEBUG
> com.urbancode.pagelet.PageletCompiler - PageletCompiler.compile():
> javac -classpath
> "C:\java\anthill-1.8.0.264\lib\activation.jar;C:\java\anthill-1.8.0.264\lib\anthill-1.8.0.264.jar;C:\java\anthill-1.8.0.264\lib\antlr.jar;C:\java\anthill-1.8.0.264\lib\Butler-1.0.75.jar;C:\java\anthill-1.8.0.264\lib\CommonsExecute.jar;C:\java\anthill-1.8.0.264\lib\CommonsUtil-0.0.3.jar;C:\java\anthill-1.8.0.264\lib\jakarta-regexp-1.2.jar;C:\java\anthill-1.8.0.264\lib\log4j.jar;C:\java\anthill-1.8.0.264\lib\mail_1_2.jar;C:\java\anthill-1.8.0.264\lib\Pagelets-3.1.5.jar;C:\java\anthill-1.8.0.264\lib\Pagelets-email-3.1.5.jar;C:\java\anthill-1.8.0.264\lib\servlet_2_2b.jar;;C:\Program
> Files\Apache Software Foundation\Tomcat 5.5\bin\bootstrap.jar"
> C:\java\anthill-1.8.0.264\pagelets\Win32\win_vss\getRevisionsSince_pgl.java
> 11:00:49:515 [Thread - AnthillBuildDaemon] INFO
> com.urbancode.anthill.adapter.VSSRepositoryAdapter - get revisions
> since command: cmd /x/c cd /d
> "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" &&
> "\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample"
> -Y"builds" &&
> "\\develdata01\sourcesafe\Foo3\win32\ss" history -Y"builds" -R -I-Y
> -vd11/22/2005;11:00A~11/22/2005;10:32A"
> 11:00:49:515 [Thread - AnthillBuildDaemon] ERROR
> com.urbancode.anthill.adapter.VSSRepositoryAdapter - Error in
> getRevisionsSince: unbalanced quotes in cmd /x/c cd /d
> "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" &&
> "\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample"
> -Y"builds" && "\\develdata01\sourcesafe\Foo3\win32\ss" history
> -Y"builds" -R -I-Y -vd11/22/2005;11:00A~11/22/2005;10:32A"
> java.lang.Exception: unbalanced quotes in cmd /x/c cd /d
> "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" &&
> "\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample"
> -Y"builds" && "\\develdata01\sourcesafe\Foo3\win32\ss" history
> -Y"builds" -R -I-Y -vd11/22/2005;11:00A~11/22/2005;10:32A"
> at
> com.urbancode.anthill.adapter.ProfileRepositoryAdapter.toArray(ProfileRepositoryAdapter.java:548)
>
> at
> com.urbancode.anthill.adapter.VSSRepositoryAdapter.getRevisionsSince(VSSRepositoryAdapter.java:172)
>
> at
> com.urbancode.anthill.BuildManager.loadRevisions(BuildManager.java:287)
> at com.urbancode.anthill.BuildManager.build(BuildManager.java:215)
> at
> com.urbancode.anthill.AnthillProject.releaseProject(AnthillProject.java:231)
>
> at com.urbancode.anthill.BuildDefinition.run(BuildDefinition.java:158)
> at com.urbancode.anthill.BuildDaemon.run(BuildDaemon.java:73)
> 11:00:49:515 [Thread - AnthillBuildDaemon] ERROR
> com.urbancode.anthill.BuildManager - unbalanced quotes in cmd /x/c cd
> /d "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" &&
> "\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample"
> -Y"builds" && "\\develdata01\sourcesafe\Foo3\win32\ss" history
> -Y"builds" -R -I-Y -vd11/22/2005;11:00A~11/22/2005;10:32A"
> com.urbancode.anthill.adapter.RepositoryException: unbalanced quotes in
> cmd /x/c cd /d "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample"
> && "\\develdata01\sourcesafe\Foo3\win32\ss" cp
> "$/ContinuousBuildExample" -Y"builds" &&
> "\\develdata01\sourcesafe\Foo3\win32\ss" history -Y"builds" -R -I-Y
> -vd11/22/2005;11:00A~11/22/2005;10:32A"
> at
> com.urbancode.anthill.adapter.VSSRepositoryAdapter.getRevisionsSince(VSSRepositoryAdapter.java:220)
>
> at
> com.urbancode.anthill.BuildManager.loadRevisions(BuildManager.java:287)
> at com.urbancode.anthill.BuildManager.build(BuildManager.java:215)
> at
> com.urbancode.anthill.AnthillProject.releaseProject(AnthillProject.java:231)
>
> at com.urbancode.anthill.BuildDefinition.run(BuildDefinition.java:158)
> at com.urbancode.anthill.BuildDaemon.run(BuildDaemon.java:73)
> 11:00:49:624 [Thread - AnthillBuildDaemon] DEBUG
> com.urbancode.pagelet.PageletFactory - Using default
>
>
>
>
> So, I think the patch is probably incorrect.
>
> Maybe you forgot to patch some files?
>
> I will try to re-apply the patch teh way I did it way back, to see
> if it helps.
>
>
> Cheers,
>
> marcio
>
>
> Brian Dellisanti wrote:
>
>> Marcio,
>>
>> I'm afraid I can't find any spot in the pagelet with a component that
>> isn't being quoted. Do you have a command string generated by Anthill
>> OS you can send me or can you point me to the spot in the pagelet that
>> needs quoting?
>>
>> Regards,
>> Brian
>>
>> Marcio Marchini wrote:
>>
>>> Hi Brian,
>>>
>>> I had already applied a similar patch here (quote before the cd,
>>> and end quote in all other pagelets) but I ran into another problem.
>>> If the path to the UNC drive where VSS is had a space, it would also
>>> fail.
>>>
>>> Something like this: \\foo\bar\prj 2.0\
>>>
>>> The equivalent test case is:
>>>
>>> 1) go to c:\temp
>>> 2) run this: cmd /x/c cd "\Documents and Settings" && dir
>>> the contents of "\Documents and Settings" is *not* listed
>>> instead, you get c:\temp
>>>
>>> You need the quotes around the whole thing and also individual
>>> paths which could also have spaces:
>>>
>>>
>>> 1) go to c:\temp
>>> 2) run this: cmd /x/c "cd "\Documents and Settings" && dir"
>>> the contents of "\Documents and Settings" *is* listed
>>>
>>>
>>> Anyway, I got the VSS admin folks here to rename their dir to
>>> avoid the space for now. This means I can no longer test your patch
>>> for the space problem :-(
>>>
>>> So... I am not sure it is ok to commit the fix. As I said, the
>>> space exposed a problem with the patch. What is even more strange...
>>> after they removed the space, I was able to run even without the patch.
>>>
>>> Strange and confusing. I am sorry I no longer have my original
>>> test case (dir with space) :-( Can you by any chance try this scenario?
>>>
>>> marcio
>>>
>>>
>>> Brian Dellisanti wrote:
>>>
>>>> Marcio,
>>>>
>>>> I checked and I do believe it's a bug in Anthill OS. I put some
>>>> updated pagelets you download at
>>>> http://www.urbancode.com/download/anthill_os/vss.zip that contain
>>>> the quotes as you describe. I believe this will also resolve the
>>>> problem of SSDIR not getting picked up. You need to replace the
>>>> contents of your conf/profiles/Win32/win_vss directory with the
>>>> contents of the zip and restart your servlet container. Please let
>>>> me know if that works for you and I'll resolve the issue and merge
>>>> the fix.
>>>>
>>>> Regards,
>>>> Brian
>>>>
>>>> Marcio Marchini wrote:
>>>>
>>>>>
>>>>> Ok, I think it is an Anthill bug.
>>>>>
>>>>> Try this:
>>>>>
>>>>> 1) go to c:\temp
>>>>> 2) run this: cmd /x/c cd C:\windows && dir
>>>>> the contents of c:\windows is *not* listed
>>>>> instead, you get c:\temp
>>>>>
>>>>>
>>>>> Now try this:
>>>>>
>>>>> 1) go to c:\temp
>>>>> 2) cmd /x/c "cd C:\windows && dir"
>>>>> the contents of c:\windows *is* listed
>>>>>
>>>>>
>>>>> Fair enough, http://www.ss64.com/nt/cmd.html says:
>>>>>
>>>>>
>>>>> If /C or /K is specified, then the remainder of the command line is
>>>>> processed as an immediate command in the new shell. Multiple commands
>>>>> separated by the command separator '&&' are accepted if surrounded
>>>>> by quotes.
>>>>>
>>>>>
>>>>>
>>>>> But if you look at the Anthill pagelet for VSS
>>>>> (getCommandInit_pgl.java):
>>>>>
>>>>> } // line 35
>>>>> out.write("cmd /x/c cd /d \""); // line 35
>>>>> out.write(String.valueOf(localProjectDir)); // line 36
>>>>> out.write("\""); // line 36
>>>>> out.write(String.valueOf(ssDirStr)); // line 36
>>>>> out.write(" && \""); // line 36
>>>>> out.write(String.valueOf(ssExeStr)); // line 36
>>>>> out.write("\" cp \"$/"); // line 36
>>>>> out.write(String.valueOf(module)); // line 36
>>>>> out.write("\""); // line 36
>>>>> out.write(String.valueOf(userNamePassStr)); // line 36
>>>>> out.write(" &&"); // line 36
>>>>> out.write("\n"); // line 36
>>>>> }
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Note how there's no \" before "cd /d...", and no corresponding
>>>>> close double quotes at the very end.
>>>>>
>>>>>
>>>>> Can an Anthill developer confirm this please?
>>>>>
>>>>> Thanks,
>>>>>
>>>>> marcio
>>>>>
>>>>>
>>>>> Marcio Marchini wrote:
>>>>>
>>>>>>
>>>>>> Correction: if I run from the cmd-line, from c:\temp:
>>>>>>
>>>>>> cmd /x/c cd /d
>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample &&
>>>>>> v:\win32\ss cp $/ContinuousBuildExample -Ybuilds && v:\win32\ss
>>>>>> get * -Ybuilds -R -I-Y -O-
>>>>>>
>>>>>>
>>>>>> The checkout does happen, and into the current dir, c:\temp, and
>>>>>> not into the "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample"
>>>>>>
>>>>>>
>>>>>> Any suggestions? It looks like these commands are being executed
>>>>>> in separate contexts and therefore the "cd /d
>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" does not
>>>>>> apply later on.
>>>>>>
>>>>>> I suspect this may be the same problem that the Tomcat service is
>>>>>> having. It is probably failing because ContinuousBuildExample
>>>>>> probably does not exist as a subdir wherever "." is when the
>>>>>> service is running.
>>>>>>
>>>>>>
>>>>>> Suggestions? Thanks,
>>>>>>
>>>>>>
>>>>>> marcio
>>>>>>
>>>>>> Marcio Marchini wrote:
>>>>>>
>>>>>>>
>>>>>>> Thanks for the tip. Now the error changed.
>>>>>>>
>>>>>>> 1)In the Tomcat log:
>>>>>>> -------------------
>>>>>>> The system cannot find the drive specified.
>>>>>>>
>>>>>>>
>>>>>>> 2)If I run from the command-line:
>>>>>>> -------------------------------
>>>>>>> C:\>cmd /x/c cd /d
>>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample && v:\w
>>>>>>> in32\ss cp $/ContinuousBuildExample -Ybuilds && v:\win32\ss get *
>>>>>>> -Ybuilds -R -I
>>>>>>> -Y -O-
>>>>>>> Current project is $/ContinuousBuildExample
>>>>>>>
>>>>>>> But nothing under
>>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample (empty dir).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> So, 2 separate problems.
>>>>>>>
>>>>>>>
>>>>>>> In #1 I thought that perhaps v:\ was not mapped for the Tomcat
>>>>>>> service (I run as a service). I changed the properties of the
>>>>>>> service to run under my user, which has the v:\ drive mapped, but
>>>>>>> I still get the problem above. Is it possible that mapped drives
>>>>>>> are not mounted for processes launched as services even if using
>>>>>>> my login? Maybe they are forked before the network drive is
>>>>>>> mapped? I tried using the \\foo\bar notation but that one also
>>>>>>> failed with the same error, so I am puzzled. (Note: the \\foo\bar
>>>>>>> path has spaces, so I was suspecting that the space might be the
>>>>>>> cause of the problem, so I tried mapping v:\ to it)
>>>>>>>
>>>>>>> In #2 the thing seems to work but no checkout happens. I suppose
>>>>>>> I should have got some files? I never used VSS, so please bare
>>>>>>> with me. My friend tells me he added the code to the VSS
>>>>>>> repository as $/ContinuousBuildExample... is there a way for me
>>>>>>> to double check? Just to make sure he did not make a mistake.
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> marcio
>>>>>>>
>>>>>>>
>>>>>>> joel.wiens at thomson.com wrote:
>>>>>>>
>>>>>>>> Marcio,
>>>>>>>> I had the same problem. I was able to resolve it by setting a
>>>>>>>> SSDIR
>>>>>>>> environment variable on the server which points to the
>>>>>>>> srcsafe.ini file.
>>>>>>>> Then when you are configuring the VSS Repository Adapter for your
>>>>>>>> Anthill project, leave the srcsafe.ini option blank.
>>>>>>>>
>>>>>>>> Joel
>>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: anthill-bounces at lists.urbancode.com
>>>>>>>> [mailto:anthill-bounces at lists.urbancode.com] On Behalf Of Marcio
>>>>>>>> Marchini
>>>>>>>> Sent: Friday, November 18, 2005 12:42 PM
>>>>>>>> To: anthill at lists.urbancode.com
>>>>>>>> Subject: [Anthill] VSS help needed
>>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> AnthillOS is not able to do teh VSS checkout. I am not familiar
>>>>>>>> with VSS, but my friend is. On the other hand, he is not
>>>>>>>> familiar with
>>>>>>>> AnthillOS and I am.
>>>>>>>>
>>>>>>>> I checked teh Tomcat logs to see what the VSS Pagelet was
>>>>>>>> running, and tried it myself:
>>>>>>>>
>>>>>>>> C:\>cmd /x/c cd /d
>>>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample
>>>>>>>> && set
>>>>>>>> SSDIR=v:\ && v:\win32\ss cp $/ContinuousBuildExample -Ybuilds &&
>>>>>>>> v:\win32\ss get
>>>>>>>> * -Ybuilds -R -I-Y -O-
>>>>>>>> No VSS database (srcsafe.ini) found. Use the SSDIR environment
>>>>>>>> variable
>>>>>>>> or run netsetup.
>>>>>>>>
>>>>>>>>
>>>>>>>> But the file does exist:
>>>>>>>>
>>>>>>>> C:\>dir v:\srcsafe.ini
>>>>>>>> Volume in drive V is Data Files
>>>>>>>> Volume Serial Number is 90F0-F942
>>>>>>>>
>>>>>>>> Directory of v:\
>>>>>>>>
>>>>>>>> 16/11/2005 03:50 PM 1,225 srcsafe.ini
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> What's going on? Any tips?
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> marcio
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Anthill mailing list
>>>>>>>> Anthill at lists.urbancode.com
>>>>>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>>>>> _______________________________________________
>>>>>>>> Anthill mailing list
>>>>>>>> Anthill at lists.urbancode.com
>>>>>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Anthill mailing list
>>>>>> Anthill at lists.urbancode.com
>>>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Anthill mailing list
>>>>> Anthill at lists.urbancode.com
>>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>>
>>>> _______________________________________________
>>>> Anthill mailing list
>>>> Anthill at lists.urbancode.com
>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Anthill mailing list
>>> Anthill at lists.urbancode.com
>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>
>> _______________________________________________
>> Anthill mailing list
>> Anthill at lists.urbancode.com
>> http://lists.urbancode.com/mailman/listinfo/anthill
>
>
> _______________________________________________
> Anthill mailing list
> Anthill at lists.urbancode.com
> http://lists.urbancode.com/mailman/listinfo/anthill
-------------- next part --------------
A non-text attachment was scrubbed...
Name: win_vss.zip
Type: application/x-zip-compressed
Size: 4206 bytes
Desc: not available
Url : http://lists.urbancode.com/pipermail/anthill/attachments/20051122/5a49c253/win_vss-0002.bin
More information about the Anthill
mailing list