MPCRUISECONTROL-12. Add new properties to the maven cruisecontrol plugin. Ftp publisher, Scp publisher.

git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@116017 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
evenisse committed 2004-08-28 21:22:15 +00:00
1 parent 122bac3900
commit b0dbab9248
4 files changed
+377 -57

No files matched your search

+29 -1
View File
@@ -23,14 +23,42 @@ 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.currentbuildstatus.filename=currentbuildstatus.txt
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}
#maven.cruisecontrol.ftp.targetHost=
maven.cruisecontrol.ftp.targetUser=anonymous
maven.cruisecontrol.ftp.targetPasswd=anonymous
maven.cruisecontrol.ftp.targetPort=21
maven.cruisecontrol.ftp.targetDir=.
maven.cruisecontrol.ftp.targetSeparator=/
maven.cruisecontrol.currentbuildstatusftppublisher=false
#maven.cruisecontrol.currentbuildstatusftppublisher.file=
#maven.cruisecontrol.currentbuildstatusftppublisher.destDir=
maven.cruisecontrol.ftppublisher=false
#maven.cruisecontrol.ftppublisher.destDir=
maven.cruisecontrol.ftppublisher.srcDir=${maven.cruisecontrol.logs.dir}
maven.cruisecontrol.ftppublisher.deleteArtifacts=no
maven.cruisecontrol.scppublisher=false
maven.cruisecontrol.scp.sourcedir=${maven.cruisecontrol.logs.dir}/${pom.artifactId}
#maven.cruisecontrol.scp.targetuser=
#maven.cruisecontrol.scp.targethost=
maven.cruisecontrol.scp.targetlogdir=.
maven.cruisecontrol.scp.targetstatusfiledir=.
maven.cruisecontrol.scp.targetseparator=/
maven.cruisecontrol.scp.ssh=ssh
#maven.cruisecontrol.scp.file=
maven.cruisecontrol.scp.statusfile=${maven.cruisecontrol.currentbuildstatus.filename}
@@ -39,7 +39,7 @@
<plugin name="svnbootstrapper" classname="net.sourceforge.cruisecontrol.bootstrappers.SVNBootstrapper"/>
</j:if>
<bootstrappers>
<currentbuildstatusbootstrapper file="${maven.cruisecontrol.logs.dir}/currentbuildstatus.txt"/>
<currentbuildstatusbootstrapper file="${maven.cruisecontrol.logs.dir}/${pom.artifactId}/${maven.cruisecontrol.currentbuildstatus.filename}"/>
</bootstrappers>
<modificationset>
<j:if test="${method == 'cvs'}">
@@ -92,7 +92,32 @@
</j:if>
</log>
<publishers>
<currentbuildstatuspublisher file="${maven.cruisecontrol.logs.dir}/currentbuildstatus.txt"/>
<currentbuildstatuspublisher file="${maven.cruisecontrol.logs.dir}/${pom.artifactId}/${maven.cruisecontrol.currentbuildstatus.filename}"/>
<j:set var="ftpstatus" value="${maven.cruisecontrol.currentbuildstatusftppublisher}"/>
<j:if test="${ftpstatus == 'true'}">
<currentbuildstatusftppublisher
targetHost="${maven.cruisecontrol.ftp.targetHost}"
targetUser="${maven.cruisecontrol.ftp.targetUser}"
targetPasswd="${maven.cruisecontrol.ftp.targetPasswd}"
targetPort="${maven.cruisecontrol.ftp.targetPort}"
targetDir="${maven.cruisecontrol.ftp.targetDir}"
targetSeparator="${maven.cruisecontrol.ftp.targetSeparator}"
file="${maven.cruisecontrol.currentbuildstatusftppublisher.file}"
destDir="${maven.cruisecontrol.currentbuildstatusftppublisher.destDir}"/>
</j:if>
<j:set var="ftppublisher" value="${maven.cruisecontrol.ftppublisher}"/>
<j:if test="${ftppublisher == 'true'}">
<ftppublisher
targetHost="${maven.cruisecontrol.ftp.targetHost}"
targetUser="${maven.cruisecontrol.ftp.targetUser}"
targetPasswd="${maven.cruisecontrol.ftp.targetPasswd}"
targetPort="${maven.cruisecontrol.ftp.targetPort}"
targetDir="${maven.cruisecontrol.ftp.targetDir}"
targetSeparator="${maven.cruisecontrol.ftp.targetSeparator}"
destDir="${maven.cruisecontrol.ftppublisher.destDir}"
srcDir="${maven.cruisecontrol.ftppublisher.srcDir}/${pom.artifactId}"
deleteArtifacts="${maven.cruisecontrol.ftppublisher.deleteArtifacts}"/>
</j:if>
<htmlemail
skipusers="${maven.cruisecontrol.mail.skipusers}"
reportsuccess="${maven.cruisecontrol.mail.reportsuccess}"
@@ -114,7 +139,47 @@
</j:if>
</j:if>
<failure address="${pom.build.nagEmailAddress}" />
<success address="${pom.build.nagEmailAddress}" />
</htmlemail>
<j:set var="scppublisher" value="${maven.cruisecontrol.scppublisher}"/>
<j:if test="${scppublisher == 'true'}">
<j:set var="scpfile" value="${maven.cruisecontrol.scp.file}"/>
<j:choose>
<j:when test="${!empty(scpfile)}">
<scp
sourcedir="${maven.cruisecontrol.scp.sourcedir}"
targetuser="${maven.cruisecontrol.scp.targetuser}"
targethost="${maven.cruisecontrol.scp.targethost}"
targetdir="${maven.cruisecontrol.scp.targetdir}"
file="${maven.cruisecontrol.scp.file}"
ssh="${maven.cruisecontrol.scp.ssh}"/>
<scp
sourcedir="${maven.cruisecontrol.scp.sourcedir}"
targetuser="${maven.cruisecontrol.scp.targetuser}"
targethost="${maven.cruisecontrol.scp.targethost}"
targetdir="${maven.cruisecontrol.scp.targetdir}"
file="${maven.cruisecontrol.scp.statusfile}"
ssh="${maven.cruisecontrol.scp.ssh}"/>
</j:when>
<j:otherwise>
<scp
sourcedir="${maven.cruisecontrol.scp.sourcedir}"
targetuser="${maven.cruisecontrol.scp.targetuser}"
targethost="${maven.cruisecontrol.scp.targethost}"
targetdir="${maven.cruisecontrol.scp.targetlogdir}"
targetseparator="${maven.cruisecontrol.scp.targetseparator}"
ssh="${maven.cruisecontrol.scp.ssh}"/>
<scp
sourcedir="${maven.cruisecontrol.scp.sourcedir}"
targetuser="${maven.cruisecontrol.scp.targetuser}"
targethost="${maven.cruisecontrol.scp.targethost}"
targetdir="${maven.cruisecontrol.scp.targetstatusfiledir}"
targetseparator="${maven.cruisecontrol.scp.targetseparator}"
file="${maven.cruisecontrol.scp.statusfile}"
ssh="${maven.cruisecontrol.scp.ssh}"/>
</j:otherwise>
</j:choose>
</j:if>
</publishers>
</project>
<jsl:applyTemplates select="./project" />
+1
View File
@@ -25,6 +25,7 @@
</properties>
<body>
<release version="1.6" date="in cvs">
<action dev="evenisse" type="add" issue="MPCRUISECONTROL-12" due-to="Alexandre Vivien">Add new properties to the maven cruisecontrol plugin. Ftp publisher, Scp publisher.</action>
</release>
<release version="1.5" date="2004-08-14">
<action dev="epugh" type="add" issue="MPCRUISECONTROL-11" due-to="Alexandre Vivien">Add new properties to the maven cruisecontrol plugin.</action>
+280 -54
View File
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
@@ -23,7 +23,7 @@
<title>Maven Cruise Control Plug-in Properties</title>
</properties>
<body>
<section name="Maven Cruise Control Plug-in Settings">
<section name="Maven Cruise Control Plug-in Global Settings">
<table>
<tr>
<th>Property</th>
@@ -113,6 +113,14 @@
<code>${maven.cruisecontrol.checkout.dir}/${module}/target/test-reports</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.currentbuildstatus.filename</td>
<td>Yes</td>
<td>
<p>The filename to write the currentbuildstatus. Default value is
<code>currentbuildstatus.txt</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.goals</td>
<td>Yes</td>
@@ -133,58 +141,6 @@
</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>
<td>maven.cruisecontrol.mail.defaultsuffix</td>
<td>Yes</td>
<td>
<p>Default value is the domain name of the first email in
<code>${pom.build.nagEmailAddress}</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.template</td>
<td>Yes</td>
@@ -243,5 +199,275 @@
</tr>
</table>
</section>
<section name="Maven Cruise Control Plug-in Mail Settings">
<table>
<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>
<td>maven.cruisecontrol.mail.defaultsuffix</td>
<td>Yes</td>
<td>
<p>Default value is the domain name of the first email in
<code>${pom.build.nagEmailAddress}</code>.</p>
</td>
</tr>
</table>
</section>
<section name="Maven Cruise Control Plug-in FTP Publisher Settings">
<table>
<tr>
<td>maven.cruisecontrol.ftp.targetHost</td>
<td>Yes</td>
<td>
<p>Host name of the FTP server.</p>
<p>
<strong>NOTE: </strong>This property doesn't have any default value, a value is required if
<code>maven.cruisecontrol.currentbuildstatusftppublisher</code> property or
<code>maven.cruisecontrol.ftppublisher</code> property is set to <code>true</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftp.targetUser</td>
<td>Yes</td>
<td>
<p>The user used for logging into the FTP site. Default value is
<code>anonymous</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftp.targetPasswd</td>
<td>Yes</td>
<td>
<p>The password used during FTP log in for the <code>maven.cruisecontrol.ftp.targetUser</code>. Default value is
<code>anonymous</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftp.targetPort</td>
<td>Yes</td>
<td>
<p>Port number of the FTP server. Default value is
<code>21</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftp.targetDir</td>
<td>Yes</td>
<td>
<p>Base directory in the FTP server to put the files. Default value is
<code>.</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftp.targetSeparator</td>
<td>Yes</td>
<td>
<p>Directory separator character used by the FTP server. Default value is
<code>/</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.currentbuildstatusftppublisher</td>
<td>Yes</td>
<td>
<p>Copies the file containing the current build status in a remote directory onto the FTP server. Default value is
<code>false</code>.</p>
<p>
<strong>NOTE: </strong>To use this CruiseControl property you need to add this line
<code>currentbuildstatusftppublisher=net.sourceforge.cruisecontrol.publishers.CurrentBuildStatusFTPPublisher</code>
in the default-plugins.properties file before building CruiseControl
(you can find it, in INSTALL_DIR/main/src/net/sourceforge/cruisecontrol/).</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.currentbuildstatusftppublisher.file</td>
<td>Yes</td>
<td>
<p>The filename to write.</p>
<p>
<strong>NOTE: </strong>This property doesn't have any default value, a value is required if
<code>maven.cruisecontrol.currentbuildstatusftppublisher</code> property is set to <code>true</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.currentbuildstatusftppublisher.destDir</td>
<td>Yes</td>
<td>
<p>The remote directory to write the file.</p>
<p>
<strong>NOTE: </strong>This property doesn't have any default value, a value is required if
<code>maven.cruisecontrol.currentbuildstatusftppublisher</code> property is set to <code>true</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftppublisher</td>
<td>Yes</td>
<td>
<p>Copies the XML log file from the build onto the FTP server. Default value is
<code>false</code>.</p>
<p>
<strong>NOTE: </strong>To use this CruiseControl property you need to add this line
<code>ftppublisher=net.sourceforge.cruisecontrol.publishers.FTPPublisher</code>
in the default-plugins.properties file before building CruiseControl
(you can find it, in INSTALL_DIR/main/src/net/sourceforge/cruisecontrol/).</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftppublisher.destDir</td>
<td>Yes</td>
<td>
<p>The remote directory to publish the files.</p>
<p>
<strong>NOTE: </strong>This property doesn't have any default value, a value is required if
<code>maven.cruisecontrol.ftppublisher</code> property is set to <code>true</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftppublisher.srcDir</td>
<td>Yes</td>
<td>
<p>To publish the XML log file, this must be the same as <code>maven.cruisecontrol.logs.dir</code>. Default value is
<code>${maven.cruisecontrol.logs.dir}</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.ftppublisher.deleteArtifacts</td>
<td>Yes</td>
<td>
<p>If <code>yes</code>, then all files successfully sent to the FTP server will be deleted locally. Default value is
<code>no</code>.</p>
</td>
</tr>
</table>
</section>
<section name="Maven Cruise Control Plug-in SCP Publisher Settings">
<table>
<tr>
<td>maven.cruisecontrol.scppublisher</td>
<td>Yes</td>
<td>
<p>Copies the XML log file from the build with a SCP command onto a remote host. Default value is
<code>false</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.sourcedir</td>
<td>Yes</td>
<td>
<p>The directory to copy from. Default value is
<code>${maven.cruisecontrol.logs.dir}</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.targetuser</td>
<td>Yes</td>
<td>
<p>Log in to the target machine as this user.</p>
<p>
<strong>NOTE: </strong>This property doesn't have any default value, a value is required if
<code>maven.cruisecontrol.scppublisher</code> property is set to <code>true</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.targethost</td>
<td>Yes</td>
<td>
<p>SCP to this machine.</p>
<p>
<strong>NOTE: </strong>This property doesn't have any default value, a value is required if
<code>maven.cruisecontrol.scppublisher</code> property is set to <code>true</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.targetlogdir</td>
<td>Yes</td>
<td>
<p>The directory to copy the log files. Default value is
<code>.</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.targetstatusfiledir</td>
<td>Yes</td>
<td>
<p>The directory to copy the currentstatusfile. Default value is
<code>.</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.targetseparator</td>
<td>Yes</td>
<td>
<p>The file separator on the target machine. Default value is
<code>/</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.ssh</td>
<td>Yes</td>
<td>
<p>The ssh application. Default value is
<code>ssh</code>.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.file</td>
<td>Yes</td>
<td>
<p>The filename to copy. Default value is the current log file.</p>
</td>
</tr>
<tr>
<td>maven.cruisecontrol.scp.statusfile</td>
<td>Yes</td>
<td>
<p>The statusfilename to copy. Default value is
<code>${maven.cruisecontrol.currentbuildstatus.filename}</code>.</p>
</td>
</tr>
</table>
</section>
</body>
</document>