views:

409

answers:

1

I am completely a newbie in continuous integration but I am trying to learn it.

Here is my set up.

I have a main production location. Computer A. I have a virtual machine hosting Windows Server 2008 OS which have Cruise Control.NET installed and running. Computer B I use Mercurial as my source control tool installed in Computer A.

Everything is configured and I can see Cruise Control report on my Computer B Web server and I can me my repository on Computer A Web server.

The problem is the following :

From my Computer B's Cruise Control console I have the following error :

Source control failure : Unable to execute file [c:\develop\CCnet\WorkingDir\hg]. The file may not exist or may not be executable. File not found 'C:\develop\CCnet\CCnetrtifacts\msbuils-results.xml.

What I did is that I copied my project directory on the Cruise Control computer c:\develop\CCnet\WorkingDir\

and Here is my source control block included in my ccnet.config :

<sourcecontrol type="hg">
<repo>http://mylocalmachinewebserver&lt;repo&gt;
<workingDirectory>c:\develop\CCnet\WorkingDirectory<workingDirectory>
</sourcecontrol>

Could someone help me understand my problem

Many thanks

+2  A: 

Is mercurial in your path? It's possible that the user under which cruise control is running has a different path than does your normal user. Is it possible to provide the full path to hg in the cruisecontrol config?

Ry4an
What would be the full path ? The path that I have included in the config file is the web server address where the repository is. Is there a specific path where a specific file must be present ?
Bernard Larouche
The full path to the exectutable. 'hg' is a program on your cruise control running computer in a folder, and the full path to it depends on where you installed it. Something like "C:\Program Files\some\thing\hg.exe" I image. CruiseControl is failing to find it, probably due to your %PATH% setting for the CC user.Have you considered using Hudson? It's _much_ better than CC.
Ry4an