in

 

Eric Hexter

Where the rubber meets the road.

Running a x64 build server. Challenges overcome.

We just setup a new build server on my current project and with it came some of those little hiccups which made the setup take longer than planned.

Cruise Control Team Foundation Client  issues

1. Although our continuous integration server (Cruise Control.Net) fully supports running on 64 bit not all of its dependencies do.  Team Foundation Client 2008 does not support 64 bit operating systems.  The fix was to force the .Net framework to run the cruise control service in 32 bit mode, by setting the 32 bit flag on the ccservice.exe. This was done using the corFlags.exe from the .Net SDK.  The actual command that was run is:

CorFlags.exe ccservice.exe /32BIT+
 

2. Running Asp.Net on wow32.

Although our application code could run 64 bit.. not all of our dependencies can.  Our web application kept failing on startup claiming that one dll could not run on x64.  Rather than tracking down a new version for that dll only to deal with the next one I first wanted to see the application work on the server running wow32 (that's Windows On Windows 32 bit) there are the operations that need to be done in order to make this happen. The first two are enabling 32 bit in IIS and registering the 32 bit .Net framework.

cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i 

The third step is enabling the Asp.net (32) in the Web Extensions in IIS Manager. This option show us after you run the aspnet_regiis command.

Once I can test my application in 32 bit mode and I know it all works, now it is time to get back to 64 bit mode and track down the culprit that prevented this in the first place. 

Comments

 

Davy Brion said:

another issue we had when we moved to a 64 bit build server was that NCover doesn't work on a 64 bit machine.  At least not the latest free versions.  The newer (non-free) versions do support 64 bit though...

July 22, 2008 4:22 PM
 

Simone Busoli said:

Same issue with NCover the free version not supporting 64 bit. We had to run our tests twice, using the x86 version of NUnit console on code compiled for x86 in the second run just to be able to get code coverage. This means our builds take twice the time they normally would. Have you found any workarounds for this?

July 22, 2008 5:05 PM
 

Visual Studio Hacks said:

My latest in a series of the weekly, or more often, summary of interesting links I come across related to Visual Studio. Lisa Feigenbaum is looking for feedback on a potential Call Hierarchy feature on The Visual Basic Team blog. Visual Studio 2008 KB

July 23, 2008 12:44 PM
 

erichexter said:

@Simone & Davy

I integrated ncover today and I did the corflags trick on ncover.console.exe and nunit-console.exe  I was able to get everything working nice and smoothly... except for the fact that I now know the health of our source code... Now comes the real work.  Bumping up the code coverage in areas of the code base.

July 24, 2008 11:06 PM
 

Simone Busoli said:

Well, you will still need to build it twice, right? Once for 32 bit and once for 64 bit.

July 25, 2008 3:45 AM
Copyright Los Techies 2007. All rights reserved.
Powered by Community Server (Commercial Edition), by Telligent Systems