release:rollback

Full name:

org.apache.maven.plugins:maven-release-plugin:3.1.1:rollback

Description:

Rollback changes made by a previous release. This requires that the previous release descriptor release.properties is still available in the local working copy. For more info see https://maven.apache.org/plugins/maven-release-plugin/usage/rollback-release.html.

Attributes:

  • Requires a Maven project to be executed.
  • Executes as an aggregator goal.
  • The goal is not marked as thread-safe and thus does not support parallel builds.
  • Since version: 2.0-beta-5.

Optional Parameters

Name Type Since Description
<arguments> String - Additional arguments to pass to the Maven executions, separated by spaces.
User Property: arguments
Alias: prepareVerifyArgs
<javaHome> File 2.0-beta-8 The Java home parameter to use for forked Maven invocations.
Default: ${java.home}
<localRepoDirectory> File 2.0-beta-8 The command-line local repository directory in use for this build (if specified).
Default: ${maven.repo.local}
<mavenExecutorId> String 2.0-beta-8 Role hint of the org.apache.maven.shared.release.exec.MavenExecutor implementation to use.
Default: invoker
User Property: mavenExecutorId
<mavenHome> File 2.0-beta-8 The Maven home parameter to use for forked Maven invocations.
Default: ${maven.home}
<password> String - The SCM password to use.
User Property: password
<pomFileName> String - The file name of the POM to execute any goals against. As of version 3.0.0, this defaults to the name of POM file of the project being built.
Default: ${project.file.name}
User Property: pomFileName
<providerImplementations> Map<String,String> 2.0-beta-6 Add a new or overwrite the default implementation per provider. The key is the scm prefix and the value is the role hint of the org.apache.maven.scm.provider.ScmProvider.
See also: org.apache.maven.scm.manager.ScmManager.setScmProviderImplementation(java.lang.String,java.lang.String)
<pushChanges> boolean 2.1 Implemented with git will or not push changes to the upstream repository. true by default to preserve backward compatibility.
Default: true
User Property: pushChanges
<releaseStrategyId> String 3.0.0-M5 The role-hint for the org.apache.maven.shared.release.strategy.Strategy implementation used to specify the phases per goal.
See also: org.apache.maven.shared.release.strategies.DefaultStrategy
Default: default
User Property: releaseStrategyId
<scmCommentPrefix> String 2.0-beta-5 The message prefix to use for all SCM changes.
Default: [maven-release-plugin]
User Property: scmCommentPrefix
<scmRollbackCommitComment> String 3.0.0-M5 The SCM commit comment when rolling back. Defaults to "@{prefix} rollback the release of @{releaseLabel}".

Property interpolation is performed on the value, but in order to ensure that the interpolation occurs during release, you must use @{...} to reference the properties rather than ${...}. The following properties are available:

  • prefix - The comment prefix.
  • groupId - The groupId of the root project.
  • artifactId - The artifactId of the root project.
  • releaseLabel - The release version of the root project.

Default: @{prefix} rollback the release of @{releaseLabel}
User Property: scmRollbackCommitComment
<scmShallowClone> boolean - When cloning a repository if it should be a shallow clone or a full clone.
Default: true
User Property: scmShallowClone
<tag> String - The SCM tag to use.
User Property: tag
Alias: releaseLabel
<tagBase> String - The tag base directory in SVN, you must define it if you don't use the standard svn layout (trunk/tags/branches). For example, http://svn.apache.org/repos/asf/maven/plugins/tags. The URL is an SVN URL and does not include the SCM provider and protocol.
User Property: tagBase
<tagNameFormat> String 2.2.0 Format to use when generating the tag name if none is specified. Property interpolation is performed on the tag, but in order to ensure that the interpolation occurs during release, you must use @{...} to reference the properties rather than ${...}. The following properties are available:
  • groupId or project.groupId - The groupId of the root project.
  • artifactId or project.artifactId - The artifactId of the root project.
  • version or project.version - The release version of the root project.

Default: @{project.artifactId}-@{project.version}
User Property: tagNameFormat
<username> String - The SCM username to use.
User Property: username
<workItem> String 3.0.0-M5 A workItem for SCMs like RTC, TFS etc, that may require additional information to perform a pushChange operation.
User Property: workItem

Parameter Details

<arguments>

Additional arguments to pass to the Maven executions, separated by spaces.
  • Type: java.lang.String
  • Required: No
  • User Property: arguments
  • Alias: prepareVerifyArgs

<javaHome>

The Java home parameter to use for forked Maven invocations.
  • Type: java.io.File
  • Since: 2.0-beta-8
  • Required: No
  • Default: ${java.home}

<localRepoDirectory>

The command-line local repository directory in use for this build (if specified).
  • Type: java.io.File
  • Since: 2.0-beta-8
  • Required: No
  • Default: ${maven.repo.local}

<mavenExecutorId>

Role hint of the org.apache.maven.shared.release.exec.MavenExecutor implementation to use.
  • Type: java.lang.String
  • Since: 2.0-beta-8
  • Required: No
  • User Property: mavenExecutorId
  • Default: invoker

<mavenHome>

The Maven home parameter to use for forked Maven invocations.
  • Type: java.io.File
  • Since: 2.0-beta-8
  • Required: No
  • Default: ${maven.home}

<password>

The SCM password to use.
  • Type: java.lang.String
  • Required: No
  • User Property: password

<pomFileName>

The file name of the POM to execute any goals against. As of version 3.0.0, this defaults to the name of POM file of the project being built.
  • Type: java.lang.String
  • Required: No
  • User Property: pomFileName
  • Default: ${project.file.name}

<providerImplementations>

Add a new or overwrite the default implementation per provider. The key is the scm prefix and the value is the role hint of the org.apache.maven.scm.provider.ScmProvider.
See also: org.apache.maven.scm.manager.ScmManager.setScmProviderImplementation(java.lang.String,java.lang.String)
  • Type: java.util.Map<java.lang.String, java.lang.String>
  • Since: 2.0-beta-6
  • Required: No

<pushChanges>

Implemented with git will or not push changes to the upstream repository. true by default to preserve backward compatibility.
  • Type: boolean
  • Since: 2.1
  • Required: No
  • User Property: pushChanges
  • Default: true

<releaseStrategyId>

The role-hint for the org.apache.maven.shared.release.strategy.Strategy implementation used to specify the phases per goal.
See also: org.apache.maven.shared.release.strategies.DefaultStrategy
  • Type: java.lang.String
  • Since: 3.0.0-M5
  • Required: No
  • User Property: releaseStrategyId
  • Default: default

<scmCommentPrefix>

The message prefix to use for all SCM changes.
  • Type: java.lang.String
  • Since: 2.0-beta-5
  • Required: No
  • User Property: scmCommentPrefix
  • Default: [maven-release-plugin]

<scmRollbackCommitComment>

The SCM commit comment when rolling back. Defaults to "@{prefix} rollback the release of @{releaseLabel}".

Property interpolation is performed on the value, but in order to ensure that the interpolation occurs during release, you must use @{...} to reference the properties rather than ${...}. The following properties are available:

  • prefix - The comment prefix.
  • groupId - The groupId of the root project.
  • artifactId - The artifactId of the root project.
  • releaseLabel - The release version of the root project.
  • Type: java.lang.String
  • Since: 3.0.0-M5
  • Required: No
  • User Property: scmRollbackCommitComment
  • Default: @{prefix} rollback the release of @{releaseLabel}

<scmShallowClone>

When cloning a repository if it should be a shallow clone or a full clone.
  • Type: boolean
  • Required: No
  • User Property: scmShallowClone
  • Default: true

<tag>

The SCM tag to use.
  • Type: java.lang.String
  • Required: No
  • User Property: tag
  • Alias: releaseLabel

<tagBase>

The tag base directory in SVN, you must define it if you don't use the standard svn layout (trunk/tags/branches). For example, http://svn.apache.org/repos/asf/maven/plugins/tags. The URL is an SVN URL and does not include the SCM provider and protocol.
  • Type: java.lang.String
  • Required: No
  • User Property: tagBase

<tagNameFormat>

Format to use when generating the tag name if none is specified. Property interpolation is performed on the tag, but in order to ensure that the interpolation occurs during release, you must use @{...} to reference the properties rather than ${...}. The following properties are available:
  • groupId or project.groupId - The groupId of the root project.
  • artifactId or project.artifactId - The artifactId of the root project.
  • version or project.version - The release version of the root project.
  • Type: java.lang.String
  • Since: 2.2.0
  • Required: No
  • User Property: tagNameFormat
  • Default: @{project.artifactId}-@{project.version}

<username>

The SCM username to use.
  • Type: java.lang.String
  • Required: No
  • User Property: username

<workItem>

A workItem for SCMs like RTC, TFS etc, that may require additional information to perform a pushChange operation.
  • Type: java.lang.String
  • Since: 3.0.0-M5
  • Required: No
  • User Property: workItem