You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by de...@apache.org on 2010/11/18 19:33:30 UTC
svn commit: r1036568 - in /maven/release/trunk: maven-release-manager/
maven-release-manager/src/main/java/org/apache/maven/shared/release/config/
maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/
maven-release-manager/src/main...
Author: dennisl
Date: Thu Nov 18 18:33:29 2010
New Revision: 1036568
URL: http://svn.apache.org/viewvc?rev=1036568&view=rev
Log:
[MRELEASE-613] Add a parameter that tells the plugin to wait for X seconds before tagging
Modified:
maven/release/trunk/maven-release-manager/pom.xml
maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java
maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/ScmTagPhase.java
maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo
maven/release/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
Modified: maven/release/trunk/maven-release-manager/pom.xml
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/pom.xml?rev=1036568&r1=1036567&r2=1036568&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/pom.xml (original)
+++ maven/release/trunk/maven-release-manager/pom.xml Thu Nov 18 18:33:29 2010
@@ -239,7 +239,7 @@
</execution>
</executions>
<configuration>
- <version>2.1.0</version>
+ <version>2.2.0</version>
<packageWithVersion>false</packageWithVersion>
<models>
<model>src/main/mdo/release-descriptor.mdo</model>
Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java?rev=1036568&r1=1036567&r2=1036568&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java (original)
+++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java Thu Nov 18 18:33:29 2010
@@ -95,7 +95,8 @@ public class ReleaseUtils
mergeInto.setRemoteTagging( toBeMerged.isRemoteTagging() );
mergeInto.setLocalCheckout( toBeMerged.isLocalCheckout() );
mergeInto.setPushChanges( toBeMerged.isPushChanges() );
-
+ mergeInto.setWaitBeforeTagging( toBeMerged.getWaitBeforeTagging() );
+
// If the user specifies versions, these should be override the existing versions
if ( toBeMerged.getReleaseVersions() != null )
{
Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/ScmTagPhase.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/ScmTagPhase.java?rev=1036568&r1=1036567&r2=1036568&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/ScmTagPhase.java (original)
+++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/ScmTagPhase.java Thu Nov 18 18:33:29 2010
@@ -64,6 +64,18 @@ public class ScmTagPhase
validateConfiguration( releaseDescriptor );
+ if ( releaseDescriptor.getWaitBeforeTagging() > 0 )
+ {
+ logInfo( relResult, "Waiting for " + releaseDescriptor.getWaitBeforeTagging() + " seconds before tagging the release." );
+ try
+ {
+ Thread.sleep( releaseDescriptor.getWaitBeforeTagging() * 1000 );
+ }
+ catch( InterruptedException e ) {
+ // Ignore
+ }
+ }
+
logInfo( relResult, "Tagging release with the label " + releaseDescriptor.getScmReleaseLabel() + "..." );
ReleaseDescriptor basedirAlignedReleaseDescriptor =
Modified: maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo?rev=1036568&r1=1036567&r2=1036568&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo (original)
+++ maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo Thu Nov 18 18:33:29 2010
@@ -384,6 +384,14 @@
</description>
</field>
<field>
+ <name>waitBeforeTagging</name>
+ <version>2.2.0+</version>
+ <type>int</type>
+ <description>
+ Wait the specified number of seconds before creating a tag.
+ </description>
+ </field>
+ <field>
<name>allowTimestampedSnapshots</name>
<version>1.0.0+</version>
<type>boolean</type>
Modified: maven/release/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java?rev=1036568&r1=1036567&r2=1036568&view=diff
==============================================================================
--- maven/release/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java (original)
+++ maven/release/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java Thu Nov 18 18:33:29 2010
@@ -215,6 +215,18 @@ public class PrepareReleaseMojo
private boolean suppressCommitBeforeTag;
/**
+ * Wait the specified number of second before creating the tag.
+ * <br/><code>waitBeforeTagging</code> is useful when your source repository
+ * is synced between several instances and access to it is determined by
+ * geographical location, like the SVN repository at the Apache Software
+ * Foundation.
+ *
+ * @parameter expression="${waitBeforeTagging}" default-value="0"
+ * @since 2.2
+ */
+ private int waitBeforeTagging;
+
+ /**
* @parameter expression="${session}"
* @readonly
* @required
@@ -258,6 +270,7 @@ public class PrepareReleaseMojo
config.setRemoteTagging( remoteTagging );
config.setUpdateWorkingCopyVersions( updateWorkingCopyVersions );
config.setSuppressCommitBeforeTagOrBranch( suppressCommitBeforeTag );
+ config.setWaitBeforeTagging( waitBeforeTagging );
if ( checkModificationExcludeList != null )
{