I am using one instance of CruiseControl to may maven projects. I would like to use the CruiseControl report, but the externalLink is includes the artifact Id. Since the property maven.cruisecontrol.buildresults.url can be defined for each project, I dot see a reason for the plugin to append the artifactId.
My request is to change the maven-cruisecontrol-plugin:register goal in plugin.jelly from:
<goal name="maven-cruisecontrol-plugin:register">
<doc:registerReport
name="CC Build Results"
pluginName="maven-cruisecontrol-plugin" externalLink="${maven.cruisecontrol.buildresults.url}/${pom.artifactId}"
description="See the cruise control build results page for this project." />
</goal>
To:
<goal name="maven-cruisecontrol-plugin:register">
<doc:registerReport
name="CC Build Results"
pluginName="maven-cruisecontrol-plugin"
externalLink="${maven.cruisecontrol.buildresults.url}"
description="See the cruise control build results page for this project." />
</goal>
Also the properties.xml and goals.xml need to be updated.
A better solution it to calculate the URL in properties. This gives the user more control, while allowing reasonable defaults. By calculating maven.cruisecontrol.buildresults.url in properties, then CruiseControls LinkEmailPublisher instead of the HTMLEmailPublisher can be used.
maven.cruisecontrol.buildresults.site=${pom.url}/cruisecontrol
maven.cruisecontrol.buildresults.url=${maven.cruisecontrol.buildresults.site}/buildresults/${pom.artifactId}
I am assuming pom.url is the from <project><url>
Paul Spencer