You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by ep...@apache.org on 2004/08/09 17:47:58 UTC
cvs commit: maven-plugins/cruisecontrol plugin.properties
epugh 2004/08/09 08:47:57
Modified: cruisecontrol/xdocs changes.xml properties.xml
cruisecontrol/src/plugin-test/cvs-scm maven.xml
cruisecontrol/src/plugin-resources cruisecontrol.jsl
cruisecontrol plugin.properties
Log:
MPCRUISECONTROL-11 Add new properties to the maven cruisecontrol plugin
Revision Changes Path
1.14 +1 -0 maven-plugins/cruisecontrol/xdocs/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/maven-plugins/cruisecontrol/xdocs/changes.xml,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- changes.xml 23 Jul 2004 09:08:09 -0000 1.13
+++ changes.xml 9 Aug 2004 15:47:57 -0000 1.14
@@ -25,6 +25,7 @@
</properties>
<body>
<release version="1.5" date="IN CVS">
+ <action dev="epugh" type="add" issue="MPCRUISECONTROL-11" due-to="Alexandre Vivien">Add new properties to the maven cruisecontrol plugin.</action>
<action dev="epugh" type="add" issue="MPCRUISECONTROL-8">External link for report should not include artifactId.</action>
<action dev="epugh" type="add" issue="MPCRUISECONTROL-7">Add support for projects building when dependent projects are built.</action>
</release>
1.9 +77 -13 maven-plugins/cruisecontrol/xdocs/properties.xml
Index: properties.xml
===================================================================
RCS file: /home/cvs/maven-plugins/cruisecontrol/xdocs/properties.xml,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- properties.xml 24 Jul 2004 16:49:13 -0000 1.8
+++ properties.xml 9 Aug 2004 15:47:57 -0000 1.9
@@ -42,31 +42,27 @@
</td>
</tr>
<tr>
- <td>maven.cruisecontrol.schedule.interval</td>
+ <td>maven.cruisecontrol.schedule.type</td>
<td>Yes</td>
<td>
- <p>Seconds in between builds for this project. Default value is
- <code>300</code>.</p>
+ <p>Defines the schedule type: interval or time. Default value is
+ <code>interval</code>.</p>
</td>
</tr>
<tr>
- <td>maven.cruisecontrol.mail.host</td>
+ <td>maven.cruisecontrol.schedule.interval</td>
<td>Yes</td>
<td>
- <p>Default value is
- <code>localhost</code>.</p>
- <p>
- <strong>NOTE: </strong>It may be more appropriate to set this in build.properties
- on the CruiseControl server since the value may differ from developer to developer.
- </p>
+ <p>Seconds in between builds for this project. Default value is
+ <code>300</code>.</p>
</td>
</tr>
<tr>
- <td>maven.cruisecontrol.mail.subjectprefix</td>
+ <td>maven.cruisecontrol.schedule.time</td>
<td>Yes</td>
<td>
- <p>Default value is
- <code>[BUILD]</code>.</p>
+ <p>Time when builds this project, in the form HHmm (execute every day). Default value is
+ <code>1900</code>.</p>
</td>
</tr>
<tr>
@@ -82,6 +78,14 @@
</td>
</tr>
<tr>
+ <td>maven.cruisecontrol.logs.encodingtype</td>
+ <td>Yes</td>
+ <td>
+ <p>Encoding type for logs files. Default value is
+ <code>ISO-8859-1</code>.</p>
+ </td>
+ </tr>
+ <tr>
<td>maven.cruisecontrol.logs.dir</td>
<td>Yes</td>
<td>
@@ -94,6 +98,22 @@
</td>
</tr>
<tr>
+ <td>maven.cruisecontrol.logs.merge</td>
+ <td>Yes</td>
+ <td>
+ <p>Set true if you want to add others reports files at the end of the Cruisecontrol report file. Default value is
+ <code>true</code>.</p>
+ </td>
+ </tr>
+ <tr>
+ <td>maven.cruisecontrol.logs.mergedirectory</td>
+ <td>Yes</td>
+ <td>
+ <p>Directory containing .xml reports files to merge. Default value is
+ <code>${maven.cruisecontrol.checkout.dir}/${module}/target/test-reports</code>.</p>
+ </td>
+ </tr>
+ <tr>
<td>maven.cruisecontrol.goals</td>
<td>Yes</td>
<td>
@@ -111,6 +131,50 @@
<strong>NOTE: </strong>It may be more appropriate to set this in build.properties
on the CruiseControl server since the value may differ from developer to developer.
</p>
+ </td>
+ </tr>
+ <tr>
+ <td>maven.cruisecontrol.mail.host</td>
+ <td>Yes</td>
+ <td>
+ <p>Default value is
+ <code>localhost</code>.</p>
+ <p>
+ <strong>NOTE: </strong>It may be more appropriate to set this in build.properties
+ on the CruiseControl server since the value may differ from developer to developer.
+ </p>
+ </td>
+ </tr>
+ <tr>
+ <td>maven.cruisecontrol.mail.subjectprefix</td>
+ <td>Yes</td>
+ <td>
+ <p>Default value is
+ <code>[BUILD]</code>.</p>
+ </td>
+ </tr>
+ <tr>
+ <td>maven.cruisecontrol.mail.skipusers</td>
+ <td>Yes</td>
+ <td>
+ <p>Controls if the users who made changes in this build get email. Default value is
+ <code>false</code>.</p>
+ </td>
+ </tr>
+ <tr>
+ <td>maven.cruisecontrol.mail.usemap</td>
+ <td>Yes</td>
+ <td>
+ <p>if true, puts developers email address (find in project.xml), so they can receive email if skipusers is false. Default value is
+ <code>true</code>.</p>
+ </td>
+ </tr>
+ <tr>
+ <td>maven.cruisecontrol.mail.reportsuccess</td>
+ <td>Yes</td>
+ <td>
+ <p>Valid values : always (mails results on every successful build), never(only mails on failed builds ), fixes(mails results only on the first successful build and the first successful build after a failed build). Default value is
+ <code>always</code>.</p>
</td>
</tr>
<tr>
1.6 +5 -3 maven-plugins/cruisecontrol/src/plugin-test/cvs-scm/maven.xml
Index: maven.xml
===================================================================
RCS file: /home/cvs/maven-plugins/cruisecontrol/src/plugin-test/cvs-scm/maven.xml,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- maven.xml 30 Jul 2004 08:21:09 -0000 1.5
+++ maven.xml 9 Aug 2004 15:47:57 -0000 1.6
@@ -50,6 +50,8 @@
</goal>
<goal name="test-cruisecontrol-jsl-file">
+ <!-- verify we can pass in another template -->
+ <j:set var="maven.cruisecontrol.template" value="${basedir}/../../plugin-resources/cruisecontrol.jsl"/>
<attainGoal name="cruisecontrol"/>
<ant:echo message="Now testing cruisecontrol configuration: ${maven.cruisecontrol.config}"/>
@@ -57,13 +59,13 @@
<x:parse var="cruisecontrolDoc" xml="${cruisecontrolFile.toURL()}" />
<x:set var="count" select="count($cruisecontrolDoc/cruisecontrol/project/modificationset/cvs)"/>
- <assert:assertEquals message="Looking for modification sets" expected="1" value="${count.intValue().toString()}"/>
+ <assert:assertEquals msg="Looking for modification sets" expected="1" value="${count.intValue().toString()}"/>
<x:set var="count" select="count($cruisecontrolDoc/cruisecontrol/project/log/merge)"/>
- <assert:assertEquals message="Looking for log merge directories" expected="1" value="${count.intValue().toString()}"/>
+ <assert:assertEquals msg="Looking for log merge directories" expected="1" value="${count.intValue().toString()}"/>
<x:set var="count" select="count($cruisecontrolDoc/cruisecontrol/project/modificationset/buildstatus)"/>
- <assert:assertEquals message="Looking for build status" expected="1" value="${count.intValue().toString()}"/>
+ <assert:assertEquals msg="Looking for build status" expected="1" value="${count.intValue().toString()}"/>
</goal>
<goal name="test-report-link-to-cruisecontrol">
1.12 +50 -22 maven-plugins/cruisecontrol/src/plugin-resources/cruisecontrol.jsl
Index: cruisecontrol.jsl
===================================================================
RCS file: /home/cvs/maven-plugins/cruisecontrol/src/plugin-resources/cruisecontrol.jsl,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- cruisecontrol.jsl 30 Jul 2004 08:21:10 -0000 1.11
+++ cruisecontrol.jsl 9 Aug 2004 15:47:57 -0000 1.12
@@ -36,13 +36,13 @@
<j:if test="${method == 'svn'}">
<plugin name="svn" classname="net.sourceforge.cruisecontrol.sourcecontrols.SVN"/>
- <plugin name="svnbootstrapper" classname="net.sourceforge.cruisecontrol.bootstrappers.SVNBootstrapper"/>
- </j:if>
+ <plugin name="svnbootstrapper" classname="net.sourceforge.cruisecontrol.bootstrappers.SVNBootstrapper"/>
+ </j:if>
<bootstrappers>
<currentbuildstatusbootstrapper file="${maven.cruisecontrol.logs.dir}/currentbuildstatus.txt"/>
</bootstrappers>
<modificationset>
- <j:if test="${method == 'cvs'}">
+ <j:if test="${method == 'cvs'}">
<maven:pluginVar var="root" plugin='maven-scm-plugin' property='maven.scm.cvs.root' />
<maven:pluginVar var="module" plugin='maven-scm-plugin' property='maven.scm.cvs.module' />
<cvs cvsroot="${root}" localWorkingCopy="${maven.cruisecontrol.checkout.dir}/${module}" />
@@ -52,38 +52,66 @@
<maven:pluginVar var="root" plugin='maven-scm-plugin' property='maven.scm.svn.root' />
<maven:pluginVar var="module" plugin='maven-scm-plugin' property='maven.scm.svn.module' />
<svn repositoryLocation="${root}" localWorkingCopy="${maven.cruisecontrol.checkout.dir}/${module}" />
- </j:if>
-
+ </j:if>
<!-- Add the list of additional directories for the classpath from ${maven.eclipse.classpath.include}-->
- <u:tokenize var="triggerProjectsSplit" delim=",">${maven.cruisecontrol.trigger.projects}</u:tokenize>
+ <u:tokenize var="triggerProjectsSplit" delim=",">${maven.cruisecontrol.trigger.projects}</u:tokenize>
<!-- add extra directories to be included in the classpath -->
<j:forEach var="triggerProject" items="${triggerProjectsSplit}">
- <buildstatus logdir="${maven.cruisecontrol.logs.dir}/${triggerProject}"/>
+ <buildstatus logdir="${maven.cruisecontrol.logs.dir}/${triggerProject}"/>
</j:forEach>
</modificationset>
+
+ <j:set var="type" value="${maven.cruisecontrol.schedule.type}"/>
+ <j:choose>
+ <j:when test="${type == 'time'}">
+ <schedule>
+ <maven
+ mavenscript="${maven.home}/bin/maven"
+ time="${maven.cruisecontrol.schedule.time}"
+ goal="${maven.cruisecontrol.goals}"
+ projectfile="${maven.cruisecontrol.checkout.dir}/${module}/project.xml"/>
+ </schedule>
+ </j:when>
+ <j:otherwise>
<schedule interval="${maven.cruisecontrol.schedule.interval}">
- <maven mavenscript="${maven.home}/bin/maven" goal="${maven.cruisecontrol.goals}" projectfile="${maven.cruisecontrol.checkout.dir}/${module}/project.xml"/>
+ <maven
+ mavenscript="${maven.home}/bin/maven"
+ goal="${maven.cruisecontrol.goals}"
+ projectfile="${maven.cruisecontrol.checkout.dir}/${module}/project.xml"/>
</schedule>
- <log dir="${maven.cruisecontrol.logs.dir}/${pom.artifactId}">
- <merge dir="${maven.cruisecontrol.checkout.dir}/${module}/target/test-reports"/>
+ </j:otherwise>
+ </j:choose>
+
+ <log
+ encoding="${maven.cruisecontrol.logs.encodingtype}"
+ dir="${maven.cruisecontrol.logs.dir}/${pom.artifactId}">
+ <j:set var="mergevar" value="${maven.cruisecontrol.logs.merge}"/>
+ <j:if test="${mergevar == 'true'}">
+ <merge dir="${maven.cruisecontrol.logs.mergedirectory}"/>
+ </j:if>
</log>
<publishers>
<currentbuildstatuspublisher file="${maven.cruisecontrol.logs.dir}/currentbuildstatus.txt"/>
<htmlemail
- subjectprefix="${maven.cruisecontrol.mail.subjectprefix}"
- defaultsuffix="${maven.cruisecontrol.mail.defaultsuffix}"
- mailhost="${maven.cruisecontrol.mail.host}"
- returnaddress="${pom.build.nagEmailAddress}"
- logdir="${maven.cruisecontrol.logs.dir}/${pom.artifactId}"
- css="${maven.cruisecontrol.home}/reporting/jsp/css/cruisecontrol.css"
+ skipusers="${maven.cruisecontrol.mail.skipusers}"
+ reportsuccess="${maven.cruisecontrol.mail.reportsuccess}"
+ subjectprefix="${maven.cruisecontrol.mail.subjectprefix}"
+ defaultsuffix="${maven.cruisecontrol.mail.defaultsuffix}"
+ mailhost="${maven.cruisecontrol.mail.host}"
+ returnaddress="${pom.build.nagEmailAddress}"
+ logdir="${maven.cruisecontrol.logs.dir}/${pom.artifactId}"
+ css="${maven.cruisecontrol.home}/reporting/jsp/css/cruisecontrol.css"
xsldir="${maven.cruisecontrol.home}/reporting/jsp/xsl">
- <!-- need to map ids to emails here -->
- <j:set var="developers" value="${pom.developers}"/>
- <j:if test="${!empty(developers)}">
- <j:forEach var="developer" items="${pom.developers}">
- <map alias="${developer.id}" address="${developer.email}"/>
- </j:forEach>
+ <j:set var="usemap" value="${maven.cruisecontrol.mail.usemap}"/>
+ <j:if test="${usemap == 'true'}">
+ <!-- need to map ids to emails here -->
+ <j:set var="developers" value="${pom.developers}"/>
+ <j:if test="${!empty(developers)}">
+ <j:forEach var="developer" items="${pom.developers}">
+ <map alias="${developer.id}" address="${developer.email}"/>
+ </j:forEach>
+ </j:if>
</j:if>
<failure address="${pom.build.nagEmailAddress}" />
</htmlemail>
1.11 +9 -1 maven-plugins/cruisecontrol/plugin.properties
Index: plugin.properties
===================================================================
RCS file: /home/cvs/maven-plugins/cruisecontrol/plugin.properties,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- plugin.properties 24 Jul 2004 16:46:39 -0000 1.10
+++ plugin.properties 9 Aug 2004 15:47:57 -0000 1.11
@@ -15,14 +15,22 @@
# -------------------------------------------------------------------
maven.cruisecontrol.config=${basedir}/cruisecontrol.xml
+maven.cruisecontrol.schedule.type=interval
maven.cruisecontrol.schedule.interval=300
+maven.cruisecontrol.schedule.time=1900
maven.cruisecontrol.checkout.dir=${basedir}/checkout
+maven.cruisecontrol.logs.encodingtype=ISO-8859-1
maven.cruisecontrol.logs.dir=${maven.build.dir}/cc-logs
+maven.cruisecontrol.logs.mergedirectory=${maven.cruisecontrol.checkout.dir}/${module}/target/test-reports
+maven.cruisecontrol.logs.merge=true
maven.cruisecontrol.goals=scm:update-project|clean test|site:deploy
maven.cruisecontrol.mail.host=localhost
maven.cruisecontrol.mail.defaultsuffix=DEFAULT_SUFFIX_NOT_SET
maven.cruisecontrol.mail.subjectprefix=[BUILD]
+maven.cruisecontrol.mail.skipusers=false
+maven.cruisecontrol.mail.reportsuccess=always
+maven.cruisecontrol.mail.usemap=true
maven.cruisecontrol.template=${plugin.resources}/cruisecontrol.jsl
maven.cruisecontrol.trigger.projects=
maven.cruisecontrol.buildresults.site=${pom.url}/cruisecontrol
-maven.cruisecontrol.buildresults.url=${maven.cruisecontrol.buildresults.site}/buildresults/${pom.artifactId}
+maven.cruisecontrol.buildresults.url=${maven.cruisecontrol.buildresults.site}/buildresults/${pom.artifactId}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org