Fork me on GitHub

prerelease:locksmith

Full name:

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

Description:

Find an delete stale locks. JVM crashes or kill -9 does not properly cleanup locks. This goals repairs them by looking for locks from processes that no longer exists. Note that this locking cleanup should run in a single, separate process to avoid running into its own locking problems. It must not be included in the lock file creating itself because there are multiple processes involved.

Attributes:

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
delete boolean - Delete stale locks?
User property is: prerelease.locksmith.delete.
fail boolean - Fail when stale locks are detected?
User property is: prerelease.locksmith.fail.
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.

Parameter Details

delete:

Delete stale locks?
  • Type: boolean
  • Required: No
  • User Property: prerelease.locksmith.delete

fail:

Fail when stale locks are detected?
  • Type: boolean
  • Required: No
  • User Property: prerelease.locksmith.fail

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

storages:

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