I've found the same issue with CC.Net 1.5.6697.8 from CCNetLive in a forceBuild publisher.

I'm also using the parameters stored in the build log xml with the xpath expression

<xsl:variable name="CCNetLabel" select="/cruisecontrol/parameters/paramet...@name='$CCNetLabel']/@value"/>

in a dashboard XSL transform and also finding the same out of date label.

I think I've tracked down the source of this issue to IntegrationRunner.Integrate() in core/IntegrationRunner.cs. After the build label is created it is updated on the IIntegrationResult, but neither the result.Parameters array nor the result.IntegrationRequest.BuildValues hash is updated. Updating these just after the calls to target.CreateLabel() seems to fix the problem.

The ExecutableTask is not effected because it obtains the CCNetLabel via IIntegrationResult.IntegrationProperties, which creates a fresh hash table every time containing the latest value of IIntegrationResult.Label.

-- Allen

Christophe Planty wrote:
Hi, With the RC1 version (never tryed with older versions), I encountered a strange behaviour while trying to use CCNetLabel value in publisher block : i can retreive $[$CCNetLabel] , but it's the label of the previous build , not the current one . I wonder if it's the expected result. (I'd expect the current's build label , then there's maybe some changes to do in my config) config is basically like :
<project ....

<labeller type="defaultlabeller">

<initialBuildLabel>1</initialBuildLabel>

<prefix>MyBuild-</prefix>

<incrementOnFailure>true</incrementOnFailure>

<labelFormat>00000</labelFormat>

</labeller>

<tasks>

.. some tasks

<tasks>

<publishers>

.. some other publishers

<exec>

<executable>test.bat</executable>

<buildArgs>logForTest $[$CCNetLabel]</buildArgs>

</exec>

</publishers>

the small test.bat just echo and logs in a file the arguments ...

i observed same bahaviour with  <labeller type="lastChangeLabeller">

is there a way to retreive current's build label from within ccnet config ? ( mail publisher , statistics publisher retreives the good label ... )

Reply via email to