Fork me on GitHub

prerelease:create

Full name:

net.oneandone.maven.plugins:prerelease:1.6.3-SNAPSHOT:create

Description:

Creates a prerelease with an uncommitted tag and undeployed artifacts. Creating a prerelease is the first step to create a release; once you have a prerelease, you can quicky get a release by promoting the prerelease. Execute this in the svn working directory of your project. Basically, this goal runs checks, creates an uncommitted tag of your working directory and invokes "mvn clean deploy" in it. Maven is invoked with an alternative deployment repository pointing into a subdirectory of this prerelease. In addition, the "performRelease" property is defined to get the same profiles activation you get during a "release:promote" call, When successful, prereleases are stored in the configured archive directory, previous prerelease are wiped. Checks executed by this goal: 1) no uncommitted changes in your working directory. 2) no pending updates up to the last modified revision 3) no snapshot dependencies or snapshot parent pom.

Attributes:

  • Requires a Maven project to be executed.

Required Parameters

Name Type Since Description
keep int - Number of prereleases to keep in archive. 0 to keep all, which should only be used together with swap and keep.
Default value is: 1.
User property is: prerelease.keep.
lockTimeout int - Timeout in seconds for locking a prerelease archive.
Default value is: 3600.
User property is: prerelease.lockTimeout.
storages List - Where to store prereleases.
Default value is: ${settings.localRepository}/../prereleases.
User property is: prerelease.storages.

Optional Parameters

Name Type Since Description
allowPrereleaseSnapshots boolean - Report errors for snapshot dependencies to the prerelease plugin. True is used in integration tests.
Default value is: false.
User property is: prerelease.allowPrereleaseSnapshots.
allowSnapshots boolean - Report errors for snapshot dependencies, plugins or parents when false. True is useful for testing.
Default value is: false.
User property is: prerelease.allowSnapshots.
checkoutLink String - Specifies where to create a symlink to the prerelease checkout. No symlink is created if the prerelease has no checkout yet (and thus is broken). No symlink is created if not specified.
Default value is: ${basedir}/target/checkout.
User property is: prerelease.checkoutLink.
propertyArgs String - Extra arguments to pass to the sub-maven build. A space-separated list with entries of the form -Dkey=value. Similar to "arguments" parameter of the Maven Release Plugin, but restricted to -D properties.
User property is: prerelease.args.
snapshots boolean - Set to true to deploy snapshots for every successfully built prerelease
Default value is: false.
User property is: prerelease.snapshots.

Parameter Details

allowPrereleaseSnapshots:

Report errors for snapshot dependencies to the prerelease plugin. True is used in integration tests.
  • Type: boolean
  • Required: No
  • User Property: prerelease.allowPrereleaseSnapshots
  • Default: false

allowSnapshots:

Report errors for snapshot dependencies, plugins or parents when false. True is useful for testing.
  • Type: boolean
  • Required: No
  • User Property: prerelease.allowSnapshots
  • Default: false

checkoutLink:

Specifies where to create a symlink to the prerelease checkout. No symlink is created if the prerelease has no checkout yet (and thus is broken). No symlink is created if not specified.
  • Type: java.lang.String
  • Required: No
  • User Property: prerelease.checkoutLink
  • Default: ${basedir}/target/checkout

keep:

Number of prereleases to keep in archive. 0 to keep all, which should only be used together with swap and keep.
  • Type: int
  • Required: Yes
  • User Property: prerelease.keep
  • Default: 1

lockTimeout:

Timeout in seconds for locking a prerelease archive.
  • Type: int
  • Required: Yes
  • User Property: prerelease.lockTimeout
  • Default: 3600

propertyArgs:

Extra arguments to pass to the sub-maven build. A space-separated list with entries of the form -Dkey=value. Similar to "arguments" parameter of the Maven Release Plugin, but restricted to -D properties.
  • Type: java.lang.String
  • Required: No
  • User Property: prerelease.args

snapshots:

Set to true to deploy snapshots for every successfully built prerelease
  • Type: boolean
  • Required: No
  • User Property: prerelease.snapshots
  • Default: false

storages:

Where to store prereleases.
  • Type: java.util.List
  • Required: Yes
  • User Property: prerelease.storages
  • Default: ${settings.localRepository}/../prereleases