Hi

I think this is due to the fact you deleted the folder manually.
Once you have made a build, it should be ok.


with kind regards
Ruben Willems

On Mon, Jul 20, 2009 at 5:02 PM, Dave Carson <[email protected]> wrote:

>
> 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