From: Adam M. <amc...@av...> - 2006-03-09 17:23:08
|
Hi, all. I am having trouble getting CruiseControl.NET integrated with Surround SCM. I have created a configuration file that should monitor a workspace branch (not mainline) called "TestCC", and ccnet.exe appears to be monitoring that branch. However, when it detects modifications and proceeds to do a 'get', it gets from the mainline branch rather than the workspace branch. The SCM block from the ccnet.config is this: <sourcecontrol type="surround"> <executable>C:\Program Files\Seapine\Surround SCM\sscm.exe</executable> <serverconnect>Seapine:4900</serverconnect> <serverlogin>"build:password"</serverlogin> <branch>TestCC</branch> <repository>Engineering/Gryphon</repository> <workingDirectory>C:\Seapine\TestCC\Gryphon</workingDirectory> <recursive>1</recursive> <searchregexp>0</searchregexp> </sourcecontrol> The resultant command to check modifications taken from ccnet.log is this (note the '-b' switch): 3/8/2006 4:30:59 PM: [Gryphon:Debug]: Executing process C:\Program Files\Seapine\Surround SCM\sscm.exe cc -d20060308162838:20060308163059 -r -bTestCC -pEngineering/Gryphon -x- -zSeapine:4900 -y"build:password" in 3/8/2006 4:30:59 PM: [Gryphon:Debug]: Attempting to start process [C:\Program Files\Seapine\Surround SCM\sscm.exe] in working directory [] with arguments [cc -d20060308162838:20060308163059 -r -bTestCC -pEngineering/Gryphon -x- -zSeapine:4900 -y"build:password"] Modifying files in the TestCC branch correctly prompts ccnet.exe to do a get. However, the 'get' command looks like this (note the absence of the '-b' switch): 3/8/2006 4:31:00 PM: [Gryphon:Info]: Getting source from Surround SCM 3/8/2006 4:31:00 PM: [Gryphon:Debug]: Executing process C:\Program Files\Seapine\Surround SCM\sscm.exe get * -q -tcheckin -wreplace -r -dC:\Seapine\TestCC\Gryphon -pEngineering/Gryphon -zSeapine:4900 -y"build:password" in 3/8/2006 4:31:00 PM: [Gryphon:Debug]: Attempting to start process [C:\Program Files\Seapine\Surround SCM\sscm.exe] in working directory [] with arguments [get * -q -tcheckin -wreplace -r -dC:\Seapine\TestCC\Gryphon -Engineering/Gryphon -zSeapine:4900 -y"build:password"] A cursory check of the directory tree after the get shows several projects exist in the tree that do not exist in the TestCC branch. I am brand, spanking new to CruiseControl.NET, so I could easily be missing something simple, and in fact, I hope I am, so. Does anyone know what I'm doing wrong? Has anyone else seen this behavior? Thanks, -Adam |
From: Owen R. <exo...@gm...> - 2006-03-09 17:41:29
|
hi adam, On 09/03/06, Adam McGahan <amc...@av...> wrote: > I am having trouble getting CruiseControl.NET integrated with Surround SC= M. > I have created a configuration file that should monitor a workspace branc= h > (not mainline) called "TestCC", and ccnet.exe appears to be monitoring th= at > branch. However, when it detects modifications and proceeds to do a 'get= ', > it gets from the mainline branch rather than the workspace branch. The S= CM > block from the ccnet.config is this: it looks like this is a bug in the surround source control provider.=20 the branch tag (-b) is not included in the get source command line.=20 if you don't mind hacking the source yourself, the following change will probably fix it: Surround.cs: --- =09=09public override void GetSource(IIntegrationResult result) =09=09{ =09=09=09Log.Info("Getting source from Surround SCM"); =09=09=09string command =3D String.Format("get * -q -tcheckin -wreplace {0} -d{1} -b{2} -p{3} -z{4} -y{5}", =09=09=09 (Recursive =3D=3D 0) ? "" : "-r", =09=09=09 WorkingDirectory, =09=09=09=09=09=09=09=09=09=09 Branch, =09=09=09 Repository, =09=09=09 ServerConnect, =09=09=09 ServerLogin); =09=09=09Execute(CreateSSCMProcessInfo(command)); =09=09} --- otherwise, i should be able to get a new build out on ccnetlive by tomorrow= . cheers, owen. -- Owen Rogers | http://dotnetjunkies.com/weblog/exortech | CruiseControl.NET - http://ccnet.thoughtworks.com |
From: Owen R. <exo...@gm...> - 2006-03-10 06:22:04
|
hi adam, On 09/03/06, Owen Rogers <exo...@gm...> wrote: > On 09/03/06, Adam McGahan <amc...@av...> wrote: > > I am having trouble getting CruiseControl.NET integrated with Surround = SCM. > > I have created a configuration file that should monitor a workspace bra= nch > > (not mainline) called "TestCC", and ccnet.exe appears to be monitoring = that > > branch. However, when it detects modifications and proceeds to do a 'g= et', > > it gets from the mainline branch rather than the workspace branch. The= SCM > > block from the ccnet.config is this: > > it looks like this is a bug in the surround source control provider. > the branch tag (-b) is not included in the get source command line. > if you don't mind hacking the source yourself, the following change > will probably fix it: this patch is now applied [1] and is available in builds 1.0.2.1281 and 1.1.0.2226 from ccnetlive [2] cheers, owen. [1] http://jira.public.thoughtworks.org/browse/CCNET-657 [2] http://ccnetlive.thoughtworks.com/CCNet-1.0%2Dbuilds/ -- Owen Rogers | http://dotnetjunkies.com/weblog/exortech | CruiseControl.NET - http://ccnet.thoughtworks.com |