scm-publish:publish-scm

Full name:

org.apache.maven.plugins:maven-scm-publish-plugin:1.1:publish-scm

Description:

Publish a content to scm. By default, content is taken from default site staging directory ${project.build.directory}/staging. Can be used without project, so usable to update any SCM with any content.

Attributes:

  • Executes as an aggregator plugin.

Required Parameters

Name Type Since Description
pubScmUrl String - Location of the scm publication tree: scm:<scm_provider><delimiter><provider_specific_part>. Example: scm:svn:https://svn.apache.org/repos/infra/websites/production/maven/content/plugins/maven-scm-publish-plugin-LATEST/
Default value is: ${project.distributionManagement.site.url}.
User property is: scmpublish.pubScmUrl.

Optional Parameters

Name Type Since Description
addUniqueDirectory boolean - Add each directory in a separated SCM command: this can be necessary if SCM does not support adding subdirectories in one command.
Default value is: false.
automaticRemotePathCreation boolean - Configure svn automatic remote url creation.
Default value is: true.
User property is: scmpublish.automaticRemotePathCreation.
checkinComment String - SCM log/checkin comment for this publication.
Default value is: Site checkin for project ${project.name}.
User property is: scmpublish.checkinComment.
checkoutDirectory File - Location where the scm check-out is done. By default, scm checkout is done in build (target) directory, which is deleted on every mvn clean. To avoid this and get better performance, configure this location outside build structure and set tryUpdate to true. See Improving SCM Checkout Performance for more information.
Default value is: ${project.build.directory}/scmpublish-checkout.
User property is: scmpublish.checkoutDirectory.
content File - The content to be published.
Default value is: ${project.build.directory}/staging.
User property is: scmpublish.content.
dryRun boolean - Display list of added, deleted, and changed files, but do not do any actual SCM operations.
User property is: scmpublish.dryRun.
excludes String - Patterns to exclude from the scm tree.
extraNormalizeExtensions String[] - Extra file extensions to normalize line ending (will be added to default html,css,js list)
ignorePathsToDelete String[] - Collections of paths not to delete when checking content to delete. If your site has subdirectories published by an other mechanism/build
includes String - Patterns to include in the scm tree.
localCheckout boolean - Use a local checkout instead of doing a checkout from the upstream repository. WARNING: This will only work with distributed SCMs which support the file:// protocol TODO: we should think about having the defaults for the various SCM providers provided via Modello!
Default value is: false.
User property is: localCheckout.
password String - The SCM password to use.
User property is: password.
providerImplementations Map - List of SCM provider implementations. Key is the provider type, eg. cvs. Value is the provider implementation (the role-hint of the provider), eg. cvs or cvs_native.
scmBranch String - SCM branch to use. For github, you must configure with gh-pages.
User property is: scmpublish.scm.branch.
serverId String - The serverId specified in the settings.xml, which should be used for the authentication.
siteOutputEncoding String - The outputEncoding parameter of the site plugin. This plugin will corrupt your site if this does not match the value used by the site plugin.
Default value is: ${project.reporting.outputEncoding}.
User property is: outputEncoding.
skipCheckin boolean - Run add and delete commands, but leave the actually checkin for the user to run manually.
User property is: scmpublish.skipCheckin.
skipDeletedFiles boolean - Do not delete files to the scm
Default value is: false.
User property is: scmpublish.skipDeletedFiles.
tryUpdate boolean - If the checkout directory exists and this flag is activated, the plugin will try an SCM-update instead of delete then checkout.
Default value is: false.
User property is: scmpublish.tryUpdate.
username String - The SCM username to use.
User property is: username.

Parameter Details

addUniqueDirectory:

Add each directory in a separated SCM command: this can be necessary if SCM does not support adding subdirectories in one command.
  • Type: boolean
  • Required: No
  • Default: false

automaticRemotePathCreation:

Configure svn automatic remote url creation.
  • Type: boolean
  • Required: No
  • User Property: scmpublish.automaticRemotePathCreation
  • Default: true

checkinComment:

SCM log/checkin comment for this publication.
  • Type: java.lang.String
  • Required: No
  • User Property: scmpublish.checkinComment
  • Default: Site checkin for project ${project.name}

checkoutDirectory:

Location where the scm check-out is done. By default, scm checkout is done in build (target) directory, which is deleted on every mvn clean. To avoid this and get better performance, configure this location outside build structure and set tryUpdate to true. See Improving SCM Checkout Performance for more information.
  • Type: java.io.File
  • Required: No
  • User Property: scmpublish.checkoutDirectory
  • Default: ${project.build.directory}/scmpublish-checkout

content:

The content to be published.
  • Type: java.io.File
  • Required: No
  • User Property: scmpublish.content
  • Default: ${project.build.directory}/staging

dryRun:

Display list of added, deleted, and changed files, but do not do any actual SCM operations.
  • Type: boolean
  • Required: No
  • User Property: scmpublish.dryRun

excludes:

Patterns to exclude from the scm tree.
  • Type: java.lang.String
  • Required: No

extraNormalizeExtensions:

Extra file extensions to normalize line ending (will be added to default html,css,js list)
  • Type: java.lang.String[]
  • Required: No

ignorePathsToDelete:

Collections of paths not to delete when checking content to delete. If your site has subdirectories published by an other mechanism/build
  • Type: java.lang.String[]
  • Required: No

includes:

Patterns to include in the scm tree.
  • Type: java.lang.String
  • Required: No

localCheckout:

Use a local checkout instead of doing a checkout from the upstream repository. WARNING: This will only work with distributed SCMs which support the file:// protocol TODO: we should think about having the defaults for the various SCM providers provided via Modello!
  • Type: boolean
  • Required: No
  • User Property: localCheckout
  • Default: false

password:

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

providerImplementations:

List of SCM provider implementations. Key is the provider type, eg. cvs. Value is the provider implementation (the role-hint of the provider), eg. cvs or cvs_native.
  • Type: java.util.Map
  • Required: No

pubScmUrl:

Location of the scm publication tree: scm:<scm_provider><delimiter><provider_specific_part>. Example: scm:svn:https://svn.apache.org/repos/infra/websites/production/maven/content/plugins/maven-scm-publish-plugin-LATEST/
  • Type: java.lang.String
  • Required: Yes
  • User Property: scmpublish.pubScmUrl
  • Default: ${project.distributionManagement.site.url}

scmBranch:

SCM branch to use. For github, you must configure with gh-pages.
  • Type: java.lang.String
  • Required: No
  • User Property: scmpublish.scm.branch

serverId:

The serverId specified in the settings.xml, which should be used for the authentication.
  • Type: java.lang.String
  • Required: No

siteOutputEncoding:

The outputEncoding parameter of the site plugin. This plugin will corrupt your site if this does not match the value used by the site plugin.
  • Type: java.lang.String
  • Required: No
  • User Property: outputEncoding
  • Default: ${project.reporting.outputEncoding}

skipCheckin:

Run add and delete commands, but leave the actually checkin for the user to run manually.
  • Type: boolean
  • Required: No
  • User Property: scmpublish.skipCheckin

skipDeletedFiles:

Do not delete files to the scm
  • Type: boolean
  • Required: No
  • User Property: scmpublish.skipDeletedFiles
  • Default: false

tryUpdate:

If the checkout directory exists and this flag is activated, the plugin will try an SCM-update instead of delete then checkout.
  • Type: boolean
  • Required: No
  • User Property: scmpublish.tryUpdate
  • Default: false

username:

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