Further to this I've put in a fix for the problem and tested that it works with the NAnt task.
Unfortunately due to a password sniffing attack on SourceForge ccnetlive is not building - we need our administrator to go and reset the password for us. Craig On Jan 31, 9:30 am, "Craig & Sammi Sutherland" <[email protected]> wrote: > Hi Igor, > > I've tracked down what is causing this - we changed targetList from being a > field to a property in the nant task. Unfortunately this is now breaking the > code for setting the value using the dynamic values :-( > > Since the problem is with the setting of the values there is no work around > for it - we will need to fix the code. > > Craig > > > > > > > > -----Original Message----- > From: [email protected] [mailto:[email protected]] On > > Behalf Of Igor Markovic > Sent: Friday, 28 January 2011 3:36 a.m. > To: ccnet-user > Subject: [ccnet-user] problems with dynamic valueparameters since I use > ccnet 1.6 release > > Since I upgraded to ccnet 1.6 I have problems using dynamic parameters > in a nant task. It did work correctly with the 1.5 release. I defined > the following parameter in my project: > > <parameters> > <selectParameter name="BuildType"> > <allowedValues> > <value name="NightlyBuild">NightlyBuild</value> > <value name="IncrementalBuild">IncrementalBuild</value> > </allowedValues> > <default>IncrementalBuild</default> > </selectParameter> > </parameters> > > When I add a task like: > > <exec executable="cmd.exe" buildArgs="/C echo $[BuildType]"/> > > It will work and the output will be: > > -------------------- > [Workstation (Release):DEBUG] Starting process [cmd.exe] in working > directory [D:\CruiseControl\Workstation (Release)\Sources] with > arguments [/C echo IncrementalBuild] > [Workstation (Release):DEBUG] Not setting PriorityClass on [D: > \CruiseControl\Workstation (Release)\Sources\cmd.exe] to default > Normal > [10:DEBUG] [Workstation (Release) cmd.exe] IncrementalBuild > -------------------- > > But when I use the dynamic parameter in my ant task it will throw an > exception. > > -------------------- > System.Reflection.TargetParameterCountException: Parameter count > mismatch. > at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, > BindingFlags invokeAttr, Binder binder, Object[] parameters, > CultureInfo culture, Boolean skipVisibilityChecks) > at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, > BindingFlags invokeAttr, Binder binder, Object[] parameters, > CultureInfo culture) > at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, > Object value, BindingFlags invokeAttr, Binder binder, Object[] index, > CultureInfo culture) > at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, > Object value, Object[] index) > at > ThoughtWorks.CruiseControl.Core.Tasks.DynamicValueUtility.PropertyValue.Cha n > gePropertyValue(Object > value) > at > ThoughtWorks.CruiseControl.Core.Tasks.DynamicValueUtility.PropertyValue.Cha n > geProperty(Object > value) > at > ThoughtWorks.CruiseControl.Core.Tasks.DirectDynamicValue.ApplyTo(Object > value, Dictionary`2 parameters, IEnumerable`1 parameterDefinitions) > at > ThoughtWorks.CruiseControl.Core.Tasks.TaskBase.ApplyParameters(Dictionary`2 > parameters, IEnumerable`1 parameterDefinitions) > at > ThoughtWorks.CruiseControl.Core.Project.RunTasks(IIntegrationResult > result, IList tasksToRun, Dictionary`2 parameterValues) > at ThoughtWorks.CruiseControl.Core.Project.Run(IIntegrationResult > result) > at > ThoughtWorks.CruiseControl.Core.IntegrationRunner.Build(IIntegrationResult > result) > at > ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequ e > st > request) > -------------------- > > My nant task looks like this: > > <nant> > <executable>$(tool-nant)</executable> > <baseDirectory>$(base-dir)</baseDirectory> > <nologo>true</nologo> > <buildFile>Sources\Build\default.build</buildFile> > <logger>NAnt.Core.XmlLogger</logger> > <targetList> > <target>$[BuildType]</target> > </targetList> > <buildTimeoutSeconds>1800</buildTimeoutSeconds> > </nant> > > How can I make the dynamic parameters work with ccnet 1.6? > > Thanks for your help.
