release:perform
Full name:
org.apache.maven.plugins:maven-release-plugin:3.1.0:perform
Description:
Perform a release from SCM, either from a specified tag, or the tag representing the previous release in the working copy created by release:prepare
. For more info see https://maven.apache.org/plugins/maven-release-plugin/usage/perform-release.html.
Attributes:
- Executes as an aggregator goal.
- The goal is not marked as thread-safe and thus does not support parallel builds.
Required Parameters
Name | Type | Since | Description |
---|---|---|---|
<workingDirectory> |
File |
- |
The checkout directory. Default: ${project.build.directory}/checkout User Property: workingDirectory |
Optional Parameters
Name | Type | Since | Description |
---|---|---|---|
<arguments> |
String |
- |
Additional arguments to pass to the Maven executions, separated by spaces. User Property: arguments Alias: prepareVerifyArgs |
<connectionUrl> |
String |
- |
The SCM URL to checkout from. If omitted, the one from the release.properties file is used, followed by the URL from the current POM.User Property: connectionUrl |
<dryRun> |
boolean |
- |
Dry run: don't checkout anything from the scm repository, or modify the checkout. The goals (by default at least deploy ) will not be executed.Default: false User Property: dryRun |
<goals> |
String |
- |
A space separated list of goals to execute on release perform. Default value is either deploy or deploy site-deploy , if the project has a <distributionManagement>/<site> element.User Property: goals |
<javaHome> |
File |
2.0-beta-8 |
The Java home parameter to use for forked Maven invocations. Default: ${java.home} |
<localCheckout> |
boolean |
2.0 for release:perform and 2.5.2 for release:stage |
Use a local checkout instead of doing a checkout from the upstream repository. ATTENTION: This will only work with distributed SCMs which support the file:// protocol like e.g. git, jgit or hg! TODO: we should think about having the defaults for the various SCM providers provided via modello! Default: false User Property: localCheckout |
<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.5.3 |
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) |
<releaseProfiles> |
String |
2.0-beta-8 |
Comma separated profiles to enable on release perform, in addition to active profiles for project execution. User Property: releaseProfiles |
<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 |
<scmShallowClone> |
boolean |
- |
When cloning a repository if it should be a shallow clone or a full clone. Default: true User Property: scmShallowClone |
<useReleaseProfile> |
boolean |
- |
Deprecated. The release-profile profile will be removed from future versions of the super POMWhether to use the default release profile (Maven 2 and 3) that adds sources and javadocs to the released artifact, if appropriate. If set to true, the release plugin sets the property " performRelease " to true, which activates the profile "release-profile " as inherited from the super pom.Default: false User Property: useReleaseProfile |
<username> |
String |
- |
The SCM username to use. User Property: username |
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
<connectionUrl>
The SCM URL to checkout from. If omitted, the one from the
release.properties
file is used, followed by the URL from the current POM.- Type:
java.lang.String
- Required:
No
- User Property:
connectionUrl
<dryRun>
Dry run: don't checkout anything from the scm repository, or modify the checkout. The goals (by default at least
deploy
) will not be executed.- Type:
boolean
- Required:
No
- User Property:
dryRun
- Default:
false
<goals>
A space separated list of goals to execute on release perform. Default value is either
deploy
or deploy site-deploy
, if the project has a <distributionManagement>/<site> element.- Type:
java.lang.String
- Required:
No
- User Property:
goals
<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}
<localCheckout>
Use a local checkout instead of doing a checkout from the upstream repository. ATTENTION: This will only work with distributed SCMs which support the file:// protocol like e.g. git, jgit or hg! TODO: we should think about having the defaults for the various SCM providers provided via modello!
- Type:
boolean
- Since:
2.0 for release:perform and 2.5.2 for release:stage
- Required:
No
- User Property:
localCheckout
- Default:
false
<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
See also: org.apache.maven.scm.manager.ScmManager.setScmProviderImplementation(java.lang.String,java.lang.String)
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.5.3
- Required:
No
<releaseProfiles>
Comma separated profiles to enable on release perform, in addition to active profiles for project execution.
- Type:
java.lang.String
- Since:
2.0-beta-8
- Required:
No
- User Property:
releaseProfiles
<releaseStrategyId>
The role-hint for the
See also: org.apache.maven.shared.release.strategies.DefaultStrategy
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
<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
<useReleaseProfile>
Deprecated.
The
The
release-profile
profile will be removed from future versions of the super POMWhether to use the default release profile (Maven 2 and 3) that adds sources and javadocs to the released artifact, if appropriate. If set to true, the release plugin sets the property "
performRelease
" to true, which activates the profile "release-profile
" as inherited from the super pom.- Type:
boolean
- Required:
No
- User Property:
useReleaseProfile
- Default:
false
<username>
The SCM username to use.
- Type:
java.lang.String
- Required:
No
- User Property:
username
<workingDirectory>
The checkout directory.
- Type:
java.io.File
- Required:
Yes
- User Property:
workingDirectory
- Default:
${project.build.directory}/checkout