gpg:sign-and-deploy-file

Full name:

org.apache.maven.plugins:maven-gpg-plugin:1.6:sign-and-deploy-file

Description:

Signs artifacts and installs the artifact in the remote repository.

Attributes:

  • The goal is thread-safe and supports parallel builds.
  • Since version: 1.0-beta-4.

Required Parameters

Name Type Since Description
file File 1.0-beta-4 File to be deployed.
User property is: file.
repositoryId String 1.0-beta-4 Server Id to map on the <id> under <server> section of settings.xml. In most cases, this parameter will be required for authentication.
Default value is: remote-repository.
User property is: repositoryId.
url String 1.0-beta-4 URL where the artifact will be deployed.
ie ( file:///C:/m2-repo or scp://host.com/path/to/repo )
User property is: url.

Optional Parameters

Name Type Since Description
artifactId String 1.0-beta-4 ArtifactId of the artifact to be deployed. Retrieved from POM file if specified.
User property is: artifactId.
ascDirectory File 1.0-beta-4 The directory where to store signature files.
User property is: gpg.ascDirectory.
classifier String 1.0-beta-4 Add classifier to the artifact
User property is: classifier.
classifiers String 1.0-beta-4 A comma separated list of classifiers for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in files or types, then an error will be raised.
User property is: classifiers.
defaultKeyring boolean 1.2 Whether to add the default keyrings from gpg's home directory to the list of used keyrings.
Default value is: true.
User property is: gpg.defaultKeyring.
description String 1.0-beta-4 Description passed to a generated POM file (in case of generatePom=true).
User property is: generatePom.description.
executable String 1.1 The path to the GnuPG executable to use for artifact signing. Defaults to either "gpg" or "gpg.exe" depending on the operating system.
User property is: gpg.executable.
files String 1.0-beta-4 A comma separated list of files for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in types or classifiers, then an error will be raised.
User property is: files.
generatePom boolean 1.0-beta-4 Upload a POM for this artifact. Will generate a default POM if none is supplied with the pomFile argument.
Default value is: true.
User property is: generatePom.
gpgArguments List 1.5 Sets the arguments to be passed to gpg. Example:
<gpgArguments>
  <arg>--no-random-seed-file</arg>
  <arg>--no-permission-warning</arg>
</gpgArguments>

groupId String 1.0-beta-4 GroupId of the artifact to be deployed. Retrieved from POM file if specified.
User property is: groupId.
homedir File 1.0 The directory from which gpg will load keyrings. If not specified, gpg will use the value configured for its installation, e.g. ~/.gnupg or %APPDATA%/gnupg.
User property is: gpg.homedir.
javadoc File 1.3 The bundled API docs for the artifact.
User property is: javadoc.
keyname String 1.0-beta-4 The "name" of the key to sign with. Passed to gpg as --local-user.
User property is: gpg.keyname.
lockMode String 1.5 The lock mode to use when invoking gpg. By default no lock mode will be specified. Valid values are once, multiple and never. The lock mode gets translated into the corresponding --lock-___ command line argument. Improper usage of this option may lead to data and key corruption.
User property is: gpg.lockMode.
packaging String 1.0-beta-4 Type of the artifact to be deployed. Retrieved from POM file if specified. Defaults to file extension if not specified via command line or POM.
User property is: packaging.
passphrase String 1.0-beta-4 The passphrase to use when signing. If not given, look up the value under Maven settings using server id at 'passphraseServerKey' configuration.
User property is: gpg.passphrase.
passphraseServerId String 1.6 Server id to lookup the passphrase under Maven settings.
Default value is: gpg.passphrase.
User property is: gpg.passphraseServerId.
pomFile File 1.0-beta-4 Location of an existing POM file to be deployed alongside the main artifact, given by the ${file} parameter.
User property is: pomFile.
publicKeyring String 1.2 The path to a public keyring to add to the list of keyrings. By default, only the pubring.gpg from gpg's home directory is considered. Use this option (and defaultKeyring if required) to use a different public key. Note: Relative paths are resolved against gpg's home directory, not the project base directory.
User property is: gpg.publicKeyring.
repositoryLayout String 1.0-beta-4 The type of remote repository layout to deploy to. Try legacy for a Maven 1.x-style repository layout.
Default value is: default.
User property is: repositoryLayout.
retryFailedDeploymentCount int 1.3 Parameter used to control how many times a failed deployment will be retried before giving up and failing. If a value outside the range 1-10 is specified it will be pulled to the nearest value within the range 1-10.
Default value is: 1.
User property is: retryFailedDeploymentCount.
secretKeyring String 1.2 The path to a secret keyring to add to the list of keyrings. By default, only the secring.gpg from gpg's home directory is considered. Use this option (in combination with publicKeyring and defaultKeyring if required) to use a different secret key. Note: Relative paths are resolved against gpg's home directory, not the project base directory.
User property is: gpg.secretKeyring.
sources File 1.3 The bundled sources for the artifact.
User property is: sources.
types String 1.0-beta-4 A comma separated list of types for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in files or classifiers, then an error will be raised.
User property is: types.
uniqueVersion boolean 1.0-beta-4 Whether to deploy snapshots with a unique version or not.
Default value is: true.
User property is: uniqueVersion.
updateReleaseInfo boolean 1.3 Parameter used to update the metadata to make the artifact as release.
Default value is: false.
User property is: updateReleaseInfo.
useAgent boolean 1.0-beta-4 Passes --use-agent or --no-use-agent to gpg. If using an agent, the passphrase is optional as the agent will provide it. For gpg2, specify true as --no-use-agent was removed in gpg2 and doesn't ask for a passphrase anymore.
Default value is: true.
User property is: gpg.useagent.
version String 1.0-beta-4 Version of the artifact to be deployed. Retrieved from POM file if specified.
User property is: version.

Parameter Details

artifactId:

ArtifactId of the artifact to be deployed. Retrieved from POM file if specified.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: artifactId

ascDirectory:

The directory where to store signature files.
  • Type: java.io.File
  • Since: 1.0-beta-4
  • Required: No
  • User Property: gpg.ascDirectory

classifier:

Add classifier to the artifact
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: classifier

classifiers:

A comma separated list of classifiers for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in files or types, then an error will be raised.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: classifiers

defaultKeyring:

Whether to add the default keyrings from gpg's home directory to the list of used keyrings.
  • Type: boolean
  • Since: 1.2
  • Required: No
  • User Property: gpg.defaultKeyring
  • Default: true

description:

Description passed to a generated POM file (in case of generatePom=true).
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: generatePom.description

executable:

The path to the GnuPG executable to use for artifact signing. Defaults to either "gpg" or "gpg.exe" depending on the operating system.
  • Type: java.lang.String
  • Since: 1.1
  • Required: No
  • User Property: gpg.executable

file:

File to be deployed.
  • Type: java.io.File
  • Since: 1.0-beta-4
  • Required: Yes
  • User Property: file

files:

A comma separated list of files for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in types or classifiers, then an error will be raised.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: files

generatePom:

Upload a POM for this artifact. Will generate a default POM if none is supplied with the pomFile argument.
  • Type: boolean
  • Since: 1.0-beta-4
  • Required: No
  • User Property: generatePom
  • Default: true

gpgArguments:

Sets the arguments to be passed to gpg. Example:
<gpgArguments>
  <arg>--no-random-seed-file</arg>
  <arg>--no-permission-warning</arg>
</gpgArguments>
  • Type: java.util.List
  • Since: 1.5
  • Required: No

groupId:

GroupId of the artifact to be deployed. Retrieved from POM file if specified.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: groupId

homedir:

The directory from which gpg will load keyrings. If not specified, gpg will use the value configured for its installation, e.g. ~/.gnupg or %APPDATA%/gnupg.
  • Type: java.io.File
  • Since: 1.0
  • Required: No
  • User Property: gpg.homedir

javadoc:

The bundled API docs for the artifact.
  • Type: java.io.File
  • Since: 1.3
  • Required: No
  • User Property: javadoc

keyname:

The "name" of the key to sign with. Passed to gpg as --local-user.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: gpg.keyname

lockMode:

The lock mode to use when invoking gpg. By default no lock mode will be specified. Valid values are once, multiple and never. The lock mode gets translated into the corresponding --lock-___ command line argument. Improper usage of this option may lead to data and key corruption.
  • Type: java.lang.String
  • Since: 1.5
  • Required: No
  • User Property: gpg.lockMode

packaging:

Type of the artifact to be deployed. Retrieved from POM file if specified. Defaults to file extension if not specified via command line or POM.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: packaging

passphrase:

The passphrase to use when signing. If not given, look up the value under Maven settings using server id at 'passphraseServerKey' configuration.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: gpg.passphrase

passphraseServerId:

Server id to lookup the passphrase under Maven settings.
  • Type: java.lang.String
  • Since: 1.6
  • Required: No
  • User Property: gpg.passphraseServerId
  • Default: gpg.passphrase

pomFile:

Location of an existing POM file to be deployed alongside the main artifact, given by the ${file} parameter.
  • Type: java.io.File
  • Since: 1.0-beta-4
  • Required: No
  • User Property: pomFile

publicKeyring:

The path to a public keyring to add to the list of keyrings. By default, only the pubring.gpg from gpg's home directory is considered. Use this option (and defaultKeyring if required) to use a different public key. Note: Relative paths are resolved against gpg's home directory, not the project base directory.
  • Type: java.lang.String
  • Since: 1.2
  • Required: No
  • User Property: gpg.publicKeyring

repositoryId:

Server Id to map on the <id> under <server> section of settings.xml. In most cases, this parameter will be required for authentication.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: Yes
  • User Property: repositoryId
  • Default: remote-repository

repositoryLayout:

The type of remote repository layout to deploy to. Try legacy for a Maven 1.x-style repository layout.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: repositoryLayout
  • Default: default

retryFailedDeploymentCount:

Parameter used to control how many times a failed deployment will be retried before giving up and failing. If a value outside the range 1-10 is specified it will be pulled to the nearest value within the range 1-10.
  • Type: int
  • Since: 1.3
  • Required: No
  • User Property: retryFailedDeploymentCount
  • Default: 1

secretKeyring:

The path to a secret keyring to add to the list of keyrings. By default, only the secring.gpg from gpg's home directory is considered. Use this option (in combination with publicKeyring and defaultKeyring if required) to use a different secret key. Note: Relative paths are resolved against gpg's home directory, not the project base directory.
  • Type: java.lang.String
  • Since: 1.2
  • Required: No
  • User Property: gpg.secretKeyring

sources:

The bundled sources for the artifact.
  • Type: java.io.File
  • Since: 1.3
  • Required: No
  • User Property: sources

types:

A comma separated list of types for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in files or classifiers, then an error will be raised.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: types

uniqueVersion:

Whether to deploy snapshots with a unique version or not.
  • Type: boolean
  • Since: 1.0-beta-4
  • Required: No
  • User Property: uniqueVersion
  • Default: true

updateReleaseInfo:

Parameter used to update the metadata to make the artifact as release.
  • Type: boolean
  • Since: 1.3
  • Required: No
  • User Property: updateReleaseInfo
  • Default: false

url:

URL where the artifact will be deployed.
ie ( file:///C:/m2-repo or scp://host.com/path/to/repo )
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: Yes
  • User Property: url

useAgent:

Passes --use-agent or --no-use-agent to gpg. If using an agent, the passphrase is optional as the agent will provide it. For gpg2, specify true as --no-use-agent was removed in gpg2 and doesn't ask for a passphrase anymore.
  • Type: boolean
  • Since: 1.0-beta-4
  • Required: No
  • User Property: gpg.useagent
  • Default: true

version:

Version of the artifact to be deployed. Retrieved from POM file if specified.
  • Type: java.lang.String
  • Since: 1.0-beta-4
  • Required: No
  • User Property: version