Full name:

io.wcm.maven.plugins:wcmio-content-package-maven-plugin:2.1.7-SNAPSHOT:install

Description:

Install a Content Package on a remote CRX or AEM system.

Attributes:

  • Requires dependency resolution of artifacts in scope: runtime.
  • The goal is thread-safe and supports parallel builds.
  • Binds by default to the lifecycle phase: install.

Required Parameters

Name Type Since Description
<password> String - The password to authenticate against the remote CRX system (package manager).
Default value is: admin.
User property is: vault.password.
<serviceURL> String -

The URL of the HTTP service API of the CRX package manager.

See Package Manager HTTP API for details on this interface.


Default value is: http://localhost:4502/crx/packmgr/service.
User property is: vault.serviceURL.
<userId> String - The user name to authenticate as against the remote CRX system (package manager).
Default value is: admin.
User property is: vault.userId.

Optional Parameters

Name Type Since Description
<artifact> String - A string of the form groupId:artifactId[:packaging][:classifier]:version.
User property is: vault.artifact.
<artifactId> String - The artifactId of the artifact to install. Works only if used together with groupId and version.
User property is: vault.artifactId.
<bundleStatusBlacklistBundleNames> String[] - Patterns for symbolic names of bundles that are expected to be not present in bundle list. If any of these bundles are found in the bundle list, this system is assumed as not ready for installing further packages because a previous installation (e.g. of AEM service pack) is still in progress.
Default value is: ^updater\.aem.*$.
User property is: vault.bundleStatusBlacklistBundleNames.
<bundleStatusURL> String -

Bundle status JSON URL. If an URL is configured the activation status of all bundles in the system is checked before it is tried to upload and install a new package and after each upload.

If not all bundles are activated the upload is delayed up to bundleStatusWaitLimit seconds, every 5 seconds the activation status is checked anew.

Expected is an URL like: http://localhost:4502/system/console/bundles/.json

If the URL is not set it is derived from serviceURL. If set to "-" the status check is disabled.


User property is: vault.bundleStatusURL.
<bundleStatusWaitLimit> int - Number of seconds to wait as maximum for a positive bundle status check. If this limit is reached and the bundle status is still not positive the install of the package proceeds anyway.
Default value is: 360.
User property is: vault.bundleStatusWaitLimit.
<bundleStatusWhitelistBundleNames> String[] - Patterns for symbolic names of bundles that are ignored in bundle list. The state of these bundles has no effect on the bundle status check.
Default value is: ^com\.day\.crx\.crxde-support$,^com\.adobe\.granite\.crx-explorer$,^com\.adobe\.granite\.crxde-lite$,^org\.apache\.sling\.jcr\.webdav$,^org\.apache\.sling\.jcr\.davex$.
User property is: vault.bundleStatusWhitelistBundleNames.
<classifier> String - The classifier of the artifact to install.
User property is: vault.classifier.
<consoleOauth2AccessToken> String - OAuth 2 access token to authenticate against the remote CRX system (Felix console). If this is configured, username and password are ignored. Defaults to value from authenticationBearerToken.
User property is: console.consoleOauth2AccessToken.
<consolePassword> String - The password to authenticate against the remote CRX system (Felix console). Defaults to the value from password.
User property is: console.password.
<consoleUserId> String - The user name to authenticate as against the remote CRX system (Felix console). Defaults to the value from userId.
User property is: console.userId.
<delayAfterInstallSec> Integer - Delay further steps after package installation by this amount of seconds
User property is: vault.delayAfterInstallSec.
<failOnNoFile> boolean - Fail build when no file was found for installing.
Default value is: true.
User property is: vault.failOnNoFile.
<force> Boolean - Force upload and install of content package. If set to:
  • true: Package is always installed, even if it was already uploaded before.
  • false: Package is only installed if it was not already uploade before.
  • nothing (default): Force is applied to packages with the string "-SNAPSHOT" in it's filename.

User property is: vault.force.
<groupId> String - The groupId of the artifact to install. Works only if used together with artifactId and version.
User property is: vault.groupId.
<httpConnectTimeoutSec> int - HTTP connection timeout (in seconds).
Default value is: 10.
User property is: vault.httpConnectTimeoutSec.
<httpSocketTimeout> int - HTTP socket timeout (in seconds).
Default value is: 60.
User property is: vault.httpSocketTimeoutSec.
<install> boolean - Whether to install (unpack) the uploaded package automatically or not.
Default value is: true.
User property is: vault.install.
<oauth2AccessToken> String - OAuth 2 access token to authenticate against the remote CRX system (package manager). If this is configured, username and password are ignored.
User property is: vault.oauth2AccessToken.
<packageFile> File - The name of the content package file to install on the target system. If not set, the primary artifact of the project is considered the content package to be installed.
Default value is: ${project.build.directory}/${project.build.finalName}.zip.
User property is: vault.file.
<packageFileList> String -

The names of the content package files to install on the target system, separated by ",".

This has lower precedence than the 'packageFiles' parameter, but higher precedence than other options to specify files.


User property is: vault.fileList.
<packageFiles> PackageFile[] -

Allows to specify multiple package files at once, either referencing local file systems or maven artifacts. This has higher precedence than all other options to specify files.

You can set the following properties for each package item:

  • packageFile: Content package file.
  • groupId: The groupId of the artifact to install.
  • artifactId: The artifactId of the artifact to install.
  • type: The packaging of the artifact to install. (default: zip)
  • version: The version of the artifact to install.
  • classifier: The classifier of the artifact to install.
  • artifact: A string of the form groupId:artifactId[:packaging][:classifier]:version.
  • install: Whether to install (unpack) the uploaded package automatically or not.
  • force: Force upload and install of content package. If set to false a package is not uploaded or installed if it was already uploaded before.
  • recursive: If set to true nested packages get installed as well.
  • delayAfterInstallSec: Delay further steps after package installation by this amount of seconds.
  • httpSocketTimeoutSec: HTTP socket timeout (in seconds) for this package.

<packageManagerInstallStatusURL> String -

Package Manager install status JSON URL. If an URL is configured the installation status of packages and embedded packages is checked before it is tried to upload and install a new package and after each upload.

If not all packages are installed the upload is delayed up to packageManagerInstallStatusWaitLimit seconds, every 5 seconds the installation status is checked anew.

Expected is an URL like: http://localhost:4502/crx/packmgr/installstatus.jsp

If the URL is not set it is derived from serviceURL. If set to "-" the status check is disabled.


User property is: vault.packageManagerInstallStatusURL.
<packageManagerInstallStatusWaitLimit> int - Number of seconds to wait as maximum for a positive package manager install status check. If this limit is reached and the package manager status is still not positive the install of the package proceeds anyway.
Default value is: 360.
User property is: vault.packageManagerInstallStatusWaitLimit.
<packageManagerOutputLogLevel> String - Log level to be used to log responses from package manager (which may get huge for large packages). Possible values are INFO (default) or DEBUG.
Default value is: INFO.
User property is: vault.packageManagerOutputLogLevel.
<recursive> boolean - If set to true nested packages get installed as well.
Default value is: true.
User property is: vault.recursive.
<relaxedSSLCheck> boolean - If set to true also self-signed certificates are accepted.
Default value is: false.
User property is: vault.relaxedSSLCheck.
<replicate> boolean - Replicate package(s) to publish instance after upload.
User property is: vault.replicate.
<retryCount> int - Number of times to retry upload and install via CRX HTTP interface if it fails.
Default value is: 24.
User property is: vault.retryCount.
<retryDelay> int - Number of seconds between retry attempts.
Default value is: 5.
User property is: vault.retryDelay.
<skip> boolean - Set this to "true" to skip installing packages to CRX although configured in the POM.
Default value is: false.
User property is: vault.skip.
<type> String - The packaging of the artifact to install.
Default value is: zip.
User property is: vault.packaging.
Alias is: packaging.
<version> String - The version of the artifact to install. Works only if used together with artifactId and groupId.
User property is: vault.version.

Parameter Details

<artifact>

A string of the form groupId:artifactId[:packaging][:classifier]:version.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.artifact

<artifactId>

The artifactId of the artifact to install. Works only if used together with groupId and version.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.artifactId

<bundleStatusBlacklistBundleNames>

Patterns for symbolic names of bundles that are expected to be not present in bundle list. If any of these bundles are found in the bundle list, this system is assumed as not ready for installing further packages because a previous installation (e.g. of AEM service pack) is still in progress.
  • Type: java.lang.String[]
  • Required: No
  • User Property: vault.bundleStatusBlacklistBundleNames
  • Default: ^updater\.aem.*$

<bundleStatusURL>

Bundle status JSON URL. If an URL is configured the activation status of all bundles in the system is checked before it is tried to upload and install a new package and after each upload.

If not all bundles are activated the upload is delayed up to bundleStatusWaitLimit seconds, every 5 seconds the activation status is checked anew.

Expected is an URL like: http://localhost:4502/system/console/bundles/.json

If the URL is not set it is derived from serviceURL. If set to "-" the status check is disabled.

  • Type: java.lang.String
  • Required: No
  • User Property: vault.bundleStatusURL

<bundleStatusWaitLimit>

Number of seconds to wait as maximum for a positive bundle status check. If this limit is reached and the bundle status is still not positive the install of the package proceeds anyway.
  • Type: int
  • Required: No
  • User Property: vault.bundleStatusWaitLimit
  • Default: 360

<bundleStatusWhitelistBundleNames>

Patterns for symbolic names of bundles that are ignored in bundle list. The state of these bundles has no effect on the bundle status check.
  • Type: java.lang.String[]
  • Required: No
  • User Property: vault.bundleStatusWhitelistBundleNames
  • Default: ^com\.day\.crx\.crxde-support$,^com\.adobe\.granite\.crx-explorer$,^com\.adobe\.granite\.crxde-lite$,^org\.apache\.sling\.jcr\.webdav$,^org\.apache\.sling\.jcr\.davex$

<classifier>

The classifier of the artifact to install.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.classifier

<consoleOauth2AccessToken>

OAuth 2 access token to authenticate against the remote CRX system (Felix console). If this is configured, username and password are ignored. Defaults to value from authenticationBearerToken.
  • Type: java.lang.String
  • Required: No
  • User Property: console.consoleOauth2AccessToken

<consolePassword>

The password to authenticate against the remote CRX system (Felix console). Defaults to the value from password.
  • Type: java.lang.String
  • Required: No
  • User Property: console.password

<consoleUserId>

The user name to authenticate as against the remote CRX system (Felix console). Defaults to the value from userId.
  • Type: java.lang.String
  • Required: No
  • User Property: console.userId

<delayAfterInstallSec>

Delay further steps after package installation by this amount of seconds
  • Type: java.lang.Integer
  • Required: No
  • User Property: vault.delayAfterInstallSec

<failOnNoFile>

Fail build when no file was found for installing.
  • Type: boolean
  • Required: No
  • User Property: vault.failOnNoFile
  • Default: true

<force>

Force upload and install of content package. If set to:
  • true: Package is always installed, even if it was already uploaded before.
  • false: Package is only installed if it was not already uploade before.
  • nothing (default): Force is applied to packages with the string "-SNAPSHOT" in it's filename.
  • Type: java.lang.Boolean
  • Required: No
  • User Property: vault.force

<groupId>

The groupId of the artifact to install. Works only if used together with artifactId and version.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.groupId

<httpConnectTimeoutSec>

HTTP connection timeout (in seconds).
  • Type: int
  • Required: No
  • User Property: vault.httpConnectTimeoutSec
  • Default: 10

<httpSocketTimeout>

HTTP socket timeout (in seconds).
  • Type: int
  • Required: No
  • User Property: vault.httpSocketTimeoutSec
  • Default: 60

<install>

Whether to install (unpack) the uploaded package automatically or not.
  • Type: boolean
  • Required: No
  • User Property: vault.install
  • Default: true

<oauth2AccessToken>

OAuth 2 access token to authenticate against the remote CRX system (package manager). If this is configured, username and password are ignored.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.oauth2AccessToken

<packageFile>

The name of the content package file to install on the target system. If not set, the primary artifact of the project is considered the content package to be installed.
  • Type: java.io.File
  • Required: No
  • User Property: vault.file
  • Default: ${project.build.directory}/${project.build.finalName}.zip

<packageFileList>

The names of the content package files to install on the target system, separated by ",".

This has lower precedence than the 'packageFiles' parameter, but higher precedence than other options to specify files.

  • Type: java.lang.String
  • Required: No
  • User Property: vault.fileList

<packageFiles>

Allows to specify multiple package files at once, either referencing local file systems or maven artifacts. This has higher precedence than all other options to specify files.

You can set the following properties for each package item:

  • packageFile: Content package file.
  • groupId: The groupId of the artifact to install.
  • artifactId: The artifactId of the artifact to install.
  • type: The packaging of the artifact to install. (default: zip)
  • version: The version of the artifact to install.
  • classifier: The classifier of the artifact to install.
  • artifact: A string of the form groupId:artifactId[:packaging][:classifier]:version.
  • install: Whether to install (unpack) the uploaded package automatically or not.
  • force: Force upload and install of content package. If set to false a package is not uploaded or installed if it was already uploaded before.
  • recursive: If set to true nested packages get installed as well.
  • delayAfterInstallSec: Delay further steps after package installation by this amount of seconds.
  • httpSocketTimeoutSec: HTTP socket timeout (in seconds) for this package.
  • Type: io.wcm.maven.plugins.contentpackage.PackageFile[]
  • Required: No

<packageManagerInstallStatusURL>

Package Manager install status JSON URL. If an URL is configured the installation status of packages and embedded packages is checked before it is tried to upload and install a new package and after each upload.

If not all packages are installed the upload is delayed up to packageManagerInstallStatusWaitLimit seconds, every 5 seconds the installation status is checked anew.

Expected is an URL like: http://localhost:4502/crx/packmgr/installstatus.jsp

If the URL is not set it is derived from serviceURL. If set to "-" the status check is disabled.

  • Type: java.lang.String
  • Required: No
  • User Property: vault.packageManagerInstallStatusURL

<packageManagerInstallStatusWaitLimit>

Number of seconds to wait as maximum for a positive package manager install status check. If this limit is reached and the package manager status is still not positive the install of the package proceeds anyway.
  • Type: int
  • Required: No
  • User Property: vault.packageManagerInstallStatusWaitLimit
  • Default: 360

<packageManagerOutputLogLevel>

Log level to be used to log responses from package manager (which may get huge for large packages). Possible values are INFO (default) or DEBUG.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.packageManagerOutputLogLevel
  • Default: INFO

<password>

The password to authenticate against the remote CRX system (package manager).
  • Type: java.lang.String
  • Required: Yes
  • User Property: vault.password
  • Default: admin

<recursive>

If set to true nested packages get installed as well.
  • Type: boolean
  • Required: No
  • User Property: vault.recursive
  • Default: true

<relaxedSSLCheck>

If set to true also self-signed certificates are accepted.
  • Type: boolean
  • Required: No
  • User Property: vault.relaxedSSLCheck
  • Default: false

<replicate>

Replicate package(s) to publish instance after upload.
  • Type: boolean
  • Required: No
  • User Property: vault.replicate

<retryCount>

Number of times to retry upload and install via CRX HTTP interface if it fails.
  • Type: int
  • Required: No
  • User Property: vault.retryCount
  • Default: 24

<retryDelay>

Number of seconds between retry attempts.
  • Type: int
  • Required: No
  • User Property: vault.retryDelay
  • Default: 5

<serviceURL>

The URL of the HTTP service API of the CRX package manager.

See Package Manager HTTP API for details on this interface.

  • Type: java.lang.String
  • Required: Yes
  • User Property: vault.serviceURL
  • Default: http://localhost:4502/crx/packmgr/service

<skip>

Set this to "true" to skip installing packages to CRX although configured in the POM.
  • Type: boolean
  • Required: No
  • User Property: vault.skip
  • Default: false

<type>

The packaging of the artifact to install.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.packaging
  • Default: zip
  • Alias: packaging

<userId>

The user name to authenticate as against the remote CRX system (package manager).
  • Type: java.lang.String
  • Required: Yes
  • User Property: vault.userId
  • Default: admin

<version>

The version of the artifact to install. Works only if used together with artifactId and groupId.
  • Type: java.lang.String
  • Required: No
  • User Property: vault.version

Back to top

Version: 2.1.7-SNAPSHOT. Last Published: 2023-10-17.