Hi,
I use ccnet v. 1.5.7256.1
I have following snippet in one of my project in ccnet.config file:
<tasks>
<!-- main build -->
<cb:if expr="'$(BuildControls)'=='true'">
<msbuild>
<!-- omitted for brevity
</msbuild>
</cb:if>
<cb:else>
</cb:else>
<msbuild>
<!-- omitted for brevity
</msbuild>
</tasks>
However, when ccnet tries to load this, fails with exception:
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.EvaluationException:
Reference to unknown symbol if
at
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.Utils.ThrowException(ExceptionFactory
factory, String fmt, Object[] args)
at
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.ConfigPreprocessorEnvironment._GetConstantDef(String
name)
at
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.ConfigPreprocessorEnvironment.eval_constant(String
name)
at
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.ConfigPreprocessor.PreProcess(XmlReader
input, XmlWriter output, PreprocessorUrlResolver resolver, Uri
input_uri)
at
ThoughtWorks.CruiseControl.Core.Config.DefaultConfigurationFileLoader.CreateXmlValidatingLoader(FileInfo
configFile)
at
ThoughtWorks.CruiseControl.Core.Config.DefaultConfigurationFileLoader.AttemptLoadConfiguration(FileInfo
configFile)
at
ThoughtWorks.CruiseControl.Core.Config.DefaultConfigurationFileLoader.Load(FileInfo
configFile)
at
ThoughtWorks.CruiseControl.Core.Config.FileConfigurationService.Load()
at
ThoughtWorks.CruiseControl.Core.Config.FileWatcherConfigurationService.Load()
at
ThoughtWorks.CruiseControl.Core.Config.CachingConfigurationService.Load()
at
ThoughtWorks.CruiseControl.Core.CruiseServer..ctor(IConfigurationService
configurationService, IProjectIntegratorListFactory
projectIntegratorListFactory, IProjectSerializer projectSerializer,
IProjectStateManager stateManager, IFileSystem fileSystem,
IExecutionEnvironment executionEnvironment, List`1 extensionList)
at
ThoughtWorks.CruiseControl.Core.CruiseServerFactory.CreateLocal(String
configFile)
at
ThoughtWorks.CruiseControl.Core.CruiseServerFactory.CreateRemote(String
configFile)
at
ThoughtWorks.CruiseControl.Core.CruiseServerFactory.Create(Boolean
remote, String configFile)
at
ThoughtWorks.CruiseControl.Service.AppRunner.CreateAndStartCruiseServer()
at ThoughtWorks.CruiseControl.Service.AppRunner.Run(String action,
Boolean usesShadowCopying)
It looks lika if command is not recognized. Instead preprocessor looks
for variable named "if".
What am I doing wrong?
Regards, Przemyslaw