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