Hi again,

 

I did some more research on this - it turns out the path (and all
environment variables) are read only once, at system start-up. So if the
path is changed while the system is running the services will not detect any
changes to it (at least in Win2003 see
http://support.microsoft.com/kb/887693).

 

The other possibility I saw is the service is running under a different
account, and therefore has different environment variables. Therefore
changing the path under your login wouldn't affect CC.Net running under a
service.

 

So, either way this is something that happens because CC.Net is running as a
service - not anything that was done especially for CC.Net.

 

Hope this helps,

 

 

Craig

 

From: [email protected] [mailto:[email protected]] On
Behalf Of Craig & Sammi Sutherland
Sent: Thursday, 29 January 2009 10:00 p.m.
To: [email protected]
Subject: [ccnet-user] Re: Query for the developers

 

Hi Shaun,

 

I ran a quick test for you - yes CC.Net does cache the system path. I'm not
sure why, or where, but it may be something to do with the way the service
runs.

 

I also tested modifying the configuration (i.e. ccnet.config), which is
cached, but this didn't update the path that CC.Net uses. So this means the
path isn't stored with the configuration.

 

You'd probably need to restart at least the service, but I didn't test that.

 

 

Craig

 

 

From: [email protected] [mailto:[email protected]] On
Behalf Of Ruben Willems
Sent: Thursday, 29 January 2009 9:41 p.m.
To: [email protected]
Subject: [ccnet-user] Re: Query for the developers

 

Hi


I did not know this, but rebooting the pc was a bit overkill I think
if you touched the ccnet.config file (add a space or so at the end)  CCNet
would consider this a change, and reload everything.

I'll check if I can find a cache somewhere ;-)

with kind regards
Ruben Willems

On Thu, Jan 29, 2009 at 9:13 AM, CinnamonDonkey
<[email protected]> wrote:


Hi,

This is probably one for Ruben or some other clever developer type.

Does CCNET cache the system path in code? I only ask because our
nightly build failed and the only thing that had changed was the
python installation.

The error was that is could not execute Python.

Due to a particular Python API that I need to use I had to role back
from version 2.6 of Python to version 2.5. This was a simple process
and should not have affected CCNET as it was not being referred to by
absolute path in anyway (It's on the system path so there is no
need).


The system path was updated to reflect the changes and I know Python
had installed correctly because I was scripting all day yestarday so I
know it was working from the command line.

Rebooting the machine, hence shutting down and restarting CCNET. Seems
to have fixed the problem. CCNET can now access python.

This leads me to think that CCNET is caching the system path so when
changes are made it is unaware.

Regards,
Shaun

 

Reply via email to