I'm having problem with dynamic parameter. When building the project,
ccnet is not able to send the parameters to the finalbuilder script.

I have the following config file for my test project

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:cb="urn:ccnet.config.builder" name="Test Project"
queue="Continuous Integration" queuePriority="10">
        <cb:scope projectpath="e:\products\TestProject" svnurl="https://vd-
svn01/development/tools/TestProject">
                <webURL>http://serverhost1/ccnet</webURL>
                <workingDirectory>$(projectpath)</workingDirectory>
                <labeller type="defaultlabeller">
                        <prefix>Foo-1-</prefix>
                        <incrementOnFailure>true</incrementOnFailure>
                        <labelFormat>00000</labelFormat>
                </labeller>

                <cb:include href="default_state.xml" />
                <sourcecontrol type="multi">
                        <sourceControls>
                                <filtered>
                                        <sourceControlProvider type="svn">
                                                <trunkUrl>$(svnurl)</trunkUrl>
                                                
<workingDirectory>$(projectpath)</workingDirectory>
                                                
<autoGetSource>true</autoGetSource>
                                                <timeout 
units="minutes">120</timeout>
                                                
<checkExternals>true</checkExternals>
                                                
<checkExternalsRecursive>true</checkExternalsRecursive>
                                        <username>bob-tromso</username>
                                        <password>dips1234</password>
                                        </sourceControlProvider>
                                        <exclusionFilters>
                                                <pathFilter>
                                                        <pattern>**\*</pattern>
                                                </pathFilter>
                                                <pathFilter>
                                                        <pattern>**/*</pattern>
                                                </pathFilter>
                                        </exclusionFilters>
                                </filtered>
                        </sourceControls>
                </sourcecontrol>
                <cb:include href="default_trigger.xml" />
                <tasks>
                        <FinalBuilder>
                                
<ProjectFile>$(projectpath)\Project.fbp6</ProjectFile>
                                <Timeout>7200</Timeout>
                                <FBVariables>
                                        <FBVariable name="BUILD_TARGET" 
value="$[buildType]" />
                                        <FBVariable name="SIGNING_KEY_PASSWORD" 
value="$[certPasswd]" />
                                </FBVariables>
                        </FinalBuilder>
                </tasks>
                <publishers>

                        <xmllogger/>
                        <!-- send mail to developers when build fails -->
                </publishers>
                <parameters>
                        <selectParameter name="buildType">
                          <display>Release eller test bygg</display>
                          <allowedValues>
                                <value name="Test">TEST</value>
                                <value name="Release" >RELEASE</value>
                          </allowedValues>
                        </selectParameter>
                        <textParameter name="certPasswd">
                          <display>Sertifikatpassord for release bygg</display>
                          <required>false</required>
                        </textParameter>
                </parameters>
        </cb:scope>
</project>

The finalbuilder script that ccnet runs just outpus the two variables
to console, so the output from running the project is:

<cruisecontrol project="Test Project">
  <request source="HOSTINGVM" buildCondition="ForceBuild">Build
(ForceBuild) triggered from HOSTINGVM</request>
  <parameters>
    <parameter name="buildType" value="Release" />
    <parameter name="certPasswd" value="tewsxdfsdf" />
    <parameter name="$CCNetArtifactDirectory" value="M:
\CruiseControl.Net\ccnet-bin\server\Test Project\Artifacts" />
    <parameter name="$CCNetBuildCondition" value="ForceBuild" />
    <parameter name="$CCNetBuildDate" value="2009-12-11" />
    <parameter name="$CCNetBuildTime" value="08:53:52" />
    <parameter name="$CCNetFailureUsers"
value="System.Collections.ArrayList" />
    <parameter name="$CCNetIntegrationStatus" value="Unknown" />
    <parameter name="$CCNetLabel" value="Foo-1-00006" />
    <parameter name="$CCNetLastIntegrationStatus" value="Success" />
    <parameter name="$CCNetListenerFile" value="M:\CruiseControl.Net
\ccnet-bin\server\Test Project\Artifacts\Test Project_ListenFile.xml" /
>
    <parameter name="$CCNetModifyingUsers"
value="System.Collections.ArrayList" />
    <parameter name="$CCNetNumericLabel" value="6" />
    <parameter name="$CCNetProject" value="Test Project" />
    <parameter name="$CCNetProjectUrl" value="http://serverhost1/
ccnet" />
    <parameter name="$CCNetRequestSource" value="HOSTINGVM" />
    <parameter name="$CCNetUser" value="" />
    <parameter name="$CCNetWorkingDirectory" value="e:\products
\TestProject" />
  </parameters>
  <modifications />
  <integrationProperties>
    <CCNetArtifactDirectory>M:\CruiseControl.Net\ccnet-bin\server\Test
Project\Artifacts</CCNetArtifactDirectory>
    <CCNetBuildCondition>ForceBuild</CCNetBuildCondition>
    <CCNetBuildDate>2009-12-11</CCNetBuildDate>
    <CCNetBuildTime>08:53:52</CCNetBuildTime>
    <CCNetFailureUsers />
    <CCNetIntegrationStatus>Success</CCNetIntegrationStatus>
    <CCNetLabel>Foo-1-00007</CCNetLabel>
    <CCNetLastIntegrationStatus>Success</CCNetLastIntegrationStatus>
    <CCNetListenerFile>M:\CruiseControl.Net\ccnet-bin\server\Test
Project\Artifacts\Test Project_ListenFile.xml</CCNetListenerFile>
    <CCNetModifyingUsers />
    <CCNetNumericLabel>7</CCNetNumericLabel>
    <CCNetProject>Test Project</CCNetProject>
    <CCNetProjectUrl>http://serverhost1/ccnet</CCNetProjectUrl>
    <CCNetRequestSource>HOSTINGVM</CCNetRequestSource>
    <CCNetWorkingDirectory>e:\products\TestProject</
CCNetWorkingDirectory>
    <CCNetUser />
    <LastIntegrationStatus>Success</LastIntegrationStatus>
    <LastSuccessfulIntegrationLabel>Foo-1-00007</
LastSuccessfulIntegrationLabel>
    <LastModificationDate>10.12.2009 08:54:06</LastModificationDate>
  </integrationProperties>
  <build date="2009-12-11 08:53:52" buildtime="00:00:13"
buildcondition="ForceBuild">Variable [BUILD_TARGET] set to []
Variable [SIGNING_KEY_PASSWORD] set to []

Project File: e:\products\TestProject\Project.fbp6

Build Started: 11.12.2009 08:54:05


  [Start ActionList: Main]

    [Log Variable Values [Variables:
BUILD_TARGET,SIGNING_KEY_PASSWORD]]
      Current variable values :
      BUILD_TARGET =
      SIGNING_KEY_PASSWORD =
      Success

Build Completed OK
Elapsed time: 0hrs 0min 0sec 63msec

</build>
</cruisecontrol>

I'm using the latest and "greatest" ccnet (1.5.6472.1)

Reply via email to