[Buildbot-devel] cvs vs. win again
Stephen Davis
stephendavis at mac.com
Tue Aug 9 22:50:08 UTC 2005
This is bugging me again so I will bug the list again.
cvsnt on Windows is cheesing the "-D Tue, ..." CVS timestamp. If I
compare my OS X box and my windows box, I see:
OS X:
---
starting cvs operation
cvs -z3 -q update -dP -D Tue, 09 Aug 2005 19:50:36 -0000
in dir /Volumes//slave/MyApp-XC/MyApp (timeout 1200 secs)
argv: ['cvs', '-z3', '-q', 'update', '-dP', '-D', 'Tue, 09 Aug 2005
19:50:36 -0000']
Windows
---
starting cvs operation
C:\WINDOWS\system32\cmd.exe /c cvs -
d :pserver:buildbot at cvs.mycompany.com:/cvs/root -z3 -r -q checkout -d
MyApp -D Tue, 09 Aug 2005 19:50:36 -0000 MyApp
in dir E:\slave-cw\MyApp-W32 (timeout 1200 secs)
argv: ['C:\\WINDOWS\\system32\\cmd.exe', '/c', 'cvs', '-d',
':pserver:buildbot at cvs.mycompany.com:/cvs/root', '-z3', '-r', '-q',
'checkout', '-d', 'MyApp', '-D', 'Tue, 09 Aug 2005 19:50:36 -0000',
'MyApp']
cvs checkout: cwd=E:\slave-cw\MyApp-W32 ,current=E:\slave-cw\MyApp-W32
cvs server: cannot find module `09' - ignored
cvs server: cannot find module `Aug' - ignored
cvs server: cannot find module `2005' - ignored
cvs server: cannot find module `19:50:36' - ignored
cvs server: cannot find module `-0000' - ignored
cvs [checkout aborted]: cannot expand modules
I'm guessing that the Windows one is breaking the -D pieces into
separate arguments because it is being passed to cmd.exe instead of
being executed directly. It seems like the -D pieces need to be
quoted in the original argv[] list and then maybe they won't be
broken up by cmd.exe. Ignore the fact that the above windows step is
doing a full checkout, it happens for updates too.
I poked around in the CVS step's computeSourceRevision() in process/
step.py and I changed:
return formatdate(when)
to
return "\"%s\"" % (formatdate(when),)
Alas, this works for Windows but horks on OS X: cvs [checkout
aborted]: Can't parse date/time: "Tue, 09 Aug 2005 22:39:43 -0000"
Any suggestions?
stephen
More information about the devel
mailing list