[Buildbot-devel] Removing CVS checkout -d option?
Ian Britten
britten at caris.com
Tue Jun 17 16:39:04 UTC 2008
Charles Lepple wrote:
>>>Is there any way to get buildbot to not put in a "-d build" option
>>>when running the "cvs checkout" command?
>>
>>>The presence of the "-d build" option conflicts with the contents
>>>of our CVSROOT/modules entries, resulting in an invalid checkout.
>>
>>Can anyone suggest any workarounds? If I can't get our code checked
>>out, there won't be much for buildbot to do, eh? :(
>
> You might have to provide an excerpt of your modules file for people
> to understand how to resolve the conflict.
It's not pretty.. :(
A lot of this is perhaps a questionable approach, and some is a
workaround for problems we've had. Irregardless, there's a lot of
stuff set up this way, and rebuilding all our repositories isn't
really feasible/practical at this time.
------------ CVSROOT/modules --------------
include &empty
mylib -a include mylib_src mylib_inc
mylib_inc -d include/mylib mylib_inc
mylib_src -d mylib mylib_src
------------ CVSROOT/modules --------------
Doing a "cvs co mylib" will result in
mylib
include/mylib
include/empty <- Ignore this - It's a workaround
being checked out in the current directory, with the appropriate
files in each subdirectory.
Trying to do it as "cvs co -d tmp mylib" will result in errors like:
cvs checkout: Updating empty
U empty/placeholder.txt
cvs checkout: existing repository /cvs/core/CVSROOT/Emptydir does not match
/cvs/core/mylib_src
cvs checkout: ignoring module mylib_src
cvs checkout: existing repository /cvs/core/CVSROOT/Emptydir does not match
/cvs/core/mylib_inc
cvs checkout: ignoring module mylib_inc
> The buildbot source steps
> are designed to check out the code into a subdirectory that varies
> based on whether you are building from the source directory, or
> copying source to build.
Understood.
If that is the sole goal/purpose though, I wonder if buildbot could
be tweaked/enhanced to just do something like a "mkdir build;cd build"
before doing its checkout? (Then a "cd .." after)
I'd rather not have to graft yet another hack into our module
definitions - They're shameful enough already... :(
[ PS - Just to note: The CVS manual documents the behaviour of the
-d option as being *generally* like "mkdir build;cd build", but there
are cases where the effect isn't the same. ]
Thanks for any help, suggestions, etc!
Ian
More information about the devel
mailing list