Hi Ruben,

I think this is a hangover from getting the configuration working in
the early days.

On a test system I've changed the xmllogger to <xmllogger /> and
deleted the artifacts folder (so that I know what goes where) and
although the build runs successfully and creates the artifacts &
buildlogs folders (populated with the appropriate files) when I go to
the web dashboard and click on the Project Report I get an exception:
=======================================================
ThoughtWorks.CruiseControl.Core.CruiseControlException: Unexpected
exception caught on server ---> System.IO.DirectoryNotFoundException:
Could not find a part of the path 'C:\svnworkarea\WebServices\artifacts
\buildlogs'. at System.IO.__Error.WinIOError(Int32 errorCode, String
maybeFullPath) at System.IO.Directory.InternalGetFileDirectoryNames
(String path, String userPathOriginal, String searchPattern, Boolean
includeFiles, Boolean includeDirs, SearchOption searchOption) at
System.IO.DirectoryInfo.GetFiles(String searchPattern, SearchOption
searchOption) at System.IO.DirectoryInfo.GetFiles(String
searchPattern) at
ThoughtWorks.CruiseControl.Core.LogFileUtil.GetLogFileNames(String
path) at ThoughtWorks.CruiseControl.Core.Project.GetBuildNames() at
ThoughtWorks.CruiseControl.Core.Project.GetMostRecentBuildNames(Int32
buildCount) at
ThoughtWorks.CruiseControl.Core.CruiseServer.GetMostRecentBuildNames
(String projectName, Int32 buildCount) at
ThoughtWorks.CruiseControl.Core.CruiseManager.GetMostRecentBuildNames
(String projectName, Int32 buildCount) --- End of inner exception
stack trace --- Server stack trace: at
ThoughtWorks.CruiseControl.Core.CruiseManager.GetMostRecentBuildNames
(String projectName, Int32 buildCount) at
System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage
(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean
fExecuteInContext, Object[]& outArgs) at
System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage
(RuntimeMethodHandle md, Object[] args, Object server, Int32
methodPtr, Boolean fExecuteInContext, Object[]& outArgs) at
System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage
(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext) Exception
rethrown at [0]: at
System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage
reqMsg, IMessage retMsg) at
System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&
msgData, Int32 type) at
ThoughtWorks.CruiseControl.Remote.ICruiseManager.GetMostRecentBuildNames
(String projectName, Int32 buildCount) at
ThoughtWorks.CruiseControl.WebDashboard.ServerConnection.ServerAggregatingCruiseManagerWrapper.GetMostRecentBuildSpecifiers
(IProjectSpecifier projectSpecifier, Int32 buildCount) at
ThoughtWorks.CruiseControl.WebDashboard.Plugins.ProjectReport.ProjectReportProjectPlugin.Execute
(ICruiseRequest cruiseRequest) at
ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.ServerCheckingProxyAction.Execute
(ICruiseRequest cruiseRequest) at
ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.ProjectCheckingProxyAction.Execute
(ICruiseRequest cruiseRequest) at
ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.CruiseActionProxyAction.Execute
(IRequest request) at
ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.ExceptionCatchingActionProxy.Execute
(IRequest request)
=======================================================

the path 'C:\svnworkarea\WebServices\artifacts\buildlogs' does exist,
in fact CCNet created it during the build, so wht is it apparently
having problems with it now..?

Cheers

On Jul 20, 3:14 pm, Ruben Willems <[email protected]> wrote:
> Hi
>
> I would use the plain xmllogger <xmllogger>
> and use the artifact folder for specifying where the artifacts go
>
> this works perfectly
>
> with kind regards
> Ruben Willems
>
>
>
> On Mon, Jul 20, 2009 at 4:06 PM, Dave Carson <[email protected]> wrote:
>
> > Hi Ruben,
>
> > I think my problem is that I have configured the <xmllogger> and
> > <artifactDirectory> to use the same folder, i.e. the artifact folder.
>
> > Should/Could I configure the xmllogger to use a different folder and
> > if so should this be a subfolder within artifacts?
>
> > Cheers
>
> > Dave
>
> > On Jul 20, 2:47 pm, Ruben Willems <[email protected]> wrote:
> > > Hi
>
> > > I'll double check this, because the delete builds options should only
> > delete
> > > build files,
> > > and these are in the buildlog folder, as the code below shows.
>
> > > So how did your statistics file get there in the first place?
>
> > > with kind regards
> > > Ruben Willems
>
> > > On Mon, Jul 20, 2009 at 2:13 PM, Dave Carson <[email protected]>
> > wrote:
>
> > > > I've done a little poking around using Reflector and I think I have
> > > > found the problem.
>
> > > > The DeleteBuildsOlderThanXDays method is using the Creation Date/Time
> > > > of a file to determine whether or not to delete it. The statistics
> > > > file was created back in January so it was deleted - even though it
> > > > was modfied during the build process.
>
> > > > private void DeleteBuildsOlderThanXDays(string buildLogFolder, int
> > > > daysToKeep)
> > > > {
> > > >    this.SetFilesToNormalAttribute(buildLogFolder);
> > > >    foreach (string str in Directory.GetFiles(buildLogFolder))
> > > >    {
> > > >        if (File.GetCreationTime(str).Date < DateTime.Now.Date.AddDays
> > > > ((double) -daysToKeep))
> > > >        {
> > > >            File.Delete(str);
> > > >        }
> > > >    }
> > > > }
>
> > > > I'll look at raising this as a bug and see how we go.
>
> > > > Cheers
>
> > > > On Jul 20, 11:44 am, DilbertDave <[email protected]> wrote:
> > > > > Our Network Admin was recently moaning about a lack of space on the
> > > > > servers so I took a look at the artifactcleanup publisher to allow
> > > > > CCNet to keep its house in order.
>
> > > > > I started with the KeepLastXBuilds option and it did exactly what it
> > > > > said on the tin. The problem arose when I decided to use
> > > > > DeleteBuildsOlderThanXDays instead - because I wanted to retain about
> > > > > 2 weeks of history for the dashboard and could not be sure how many
> > > > > builds this would be.
>
> > > > > When the integration ran it duly removed all the log files older than
> > > > > the 20 days that I specified but also removed the report.xml and
> > > > > statistics.csv files as well - losing about 6 months of stats.
> > > > > Now these are not vital to us (so they were not backed up) but it's a
> > > > > little annoying to lose them.
>
> > > > > The question is, why did this option remove the statistics file? Is
> > it
> > > > > supposed to or is this a bug?
>
> > > > > Thanks in Advance- Hide quoted text -
>
> > > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -

Reply via email to