Can't get builds running on WinXP Virtual Drive. Also, BuildAgent/bin folder full of red herrings. Why?!

I'm in the middle of transitioning  a build farm from Visual Studio  2005 to Visual Studio 2010.  A part of  this move involves combining our  test bed of 4 machines with our  production farm of 10 machines.  On our  production farm, we have our  builds occur on a secondary drive, E:, so  maintenance is a matter of a  simple drive format.  Our test bed  machines, unfortunately, only have 1  hard drive and they're all C:  drives, so we figured the best solution  to merge the farms together is  to create virtual drives on the 4 test  bed machines that could simply  fake being E: drives (done by using the  native Windows command  "subst.")  This way we can have a single VS2010  template (pushing builds  to the E: virtual drive) and simply bring  VS2010 builds to our  production farm by swapping templates.   Unfortunately, our builds fail  instantly upon trying anything on the  virtual E: drive.

[09:24:07]: Checking for changes
[09:24:14]: RunBuildException    when running build stage CreateCheckoutDirectoryStage: Failed to   create  build checkout directory at E:\W-3p-curl
[09:24:14]: Build finished

So   why can't TeamCity deal with making a directory on the virtual E:  drive  despite the fact cygwin and cmd both deal with it fine?

Also,  one of the things I wanted to do was have the virtual drive get created  whenever the BuildAgent process starts up.  I went into the  BuildAgent/bin folder and tried editing both the agent.bat file and the  service.start.bat files to include the subst lines (one to delete  current virtual drive if it exists and another to recreate it) only to  discover through an hour of testing that teamcity doesn't even use these files.   Which begs the question, why do these files exist?  They work if I run  them manually but they are obviously not what Windows ends up using when  it starts and stops the TeamCity service.

2 comments
Comment actions Permalink

If I can't get anyone looking at the virtual drive problem, can I at least get someone to tell me what files are getting run when the process starts at boot-time?

0
Comment actions Permalink

Hi Dave

Subst is limited to user session, so drives you mapped manually are not visible within a service.
Here is a solution to create persistent mappings
http://superuser.com/questions/29072/how-to-make-subst-mapping-persistent-across-reboots

TeamCity agent can be launched in two ways - interactivelly within your user session by these bat-files, or as a service.
In last case it needs additional wrapper to interact with Windows Service Control Manager, so we have to launch it in different way.

Michael

0

Please sign in to leave a comment.