Fork me on GitHub

tycho-p2-extras:mirror

Full name:

org.eclipse.tycho.extras:tycho-p2-extras-plugin:6.0.0-SNAPSHOT:mirror

Description:

Maven plugin front-end for org.eclipse.equinox.p2.internal.repository.tools.MirrorApplication. Intended as a replacement for the p2.mirror ant task.

Attributes:

  • Requires a Maven project to be executed.
  • The goal is thread-safe and supports parallel builds.

Optional Parameters

Name Type Since Description
<append> boolean - Whether to append to an existing destination repository. Note that appending an IU which already exists in the destination repository will cause the mirror operation to fail.
Default: true
<categoryName> String 5.0.3

The name of a synthetic top-level category that will be injected into the destination repository after mirroring. All category IUs from the mirrored source repositories will appear as children of this parent entry in Eclipse's "Install New Software" dialog, rather than each appearing as a separate top-level entry.

For example, setting categoryName to Parent Category when mirroring EGit and TM4E will produce a single "Parent Category" entry that expands to reveal each tool's own categories, instead of showing them as individual top-level entries.

When omitted, the behaviour is unchanged: source categories appear as individual top-level entries in the destination repository.

<compress> boolean - Whether to compress the destination repository metadata files (artifacts.xml, content.xml).
Default: true
<currentModuleAsSource> boolean 1.1.0

Whether the current build p2 output should be added as source. Ignored for non-Tycho packaging types. Ignored if targetPlatformAsSource == false;


Default: true
<destination> File - The destination directory to mirror to.
Default: ${project.build.directory}/repository
<filter> Map<String,String> - Filter properties. In particular, a platform filter can be specified by using keys osgi.os, osgi.ws, osgi.arch.
<followOnlyFilteredRequirements> boolean - Follow only requirements which match the filter specified.
Default: false
<followStrictOnly> boolean - Set to true if only strict dependencies should be followed. A strict dependency is defined by a version range only including exactly one version (e.g. [1.0.0.v2009, 1.0.0.v2009]). In particular, plugins/features included in a feature are normally required via a strict dependency from the feature to the included plugin/feature.
Default: false
<ignoreErrors> boolean 1.1.0

If set to true, mirroring continues to run in the event of an error during the mirroring process and will just log an info message.


Default: false
<includeFeatures> boolean - Whether or not to include features.
Default: true
<includeNonGreedy> boolean - Whether or not to follow non-greedy requirements.
Default: true
<includeOptional> boolean - Whether or not to follow optional requirements.
Default: true
<ius> List<Iu> - (Optional) Which IUs to mirror. If omitted, all IUs available in the source repositories will be mirrored. An IU must specify an id and may specify a version. If version is omitted, the latest available version will be queried. By default, IUs required by the specified IUs will also be mirrored. See also followStrictOnly, followOnlyFilteredRequirements , includeOptional, includeNonGreedy, includeFeatures.
<keepNonXzIndexFiles> boolean 0.25.0

If xzCompress is true, whether jar or xml index files should be kept in addition to XZ-compressed index files. This fallback provides backwards compatibility for pre-Mars p2 clients which cannot read XZ-compressed index files.


Default: true
<latestVersionOnly> boolean - Set to true to filter the resulting set of IUs to only include the latest version of each Installable Unit only. By default, all versions satisfying dependencies are included.
Default: false
<mirrorMetadataOnly> boolean - Whether to mirror metadata only (no artifacts).
Default: false
<name> String - The target repository name.
<source> List<Repository> - Source repositori(es) to mirror from. See also targetPlatformAsSource and currentModuleAsSource
<targetPlatformAsSource> boolean 1.1.0

Whether to add the target-platform content as a source. Ignored for non-Tycho packaging types.


Default: false
<xzCompress> boolean 0.25.0

Add XZ-compressed repository index files. XZ offers better compression ratios esp. for highly redundant file content.


Default: true

Parameter Details

<append>

Whether to append to an existing destination repository. Note that appending an IU which already exists in the destination repository will cause the mirror operation to fail.
  • Type: boolean
  • Required: No
  • Default: true

<categoryName>

The name of a synthetic top-level category that will be injected into the destination repository after mirroring. All category IUs from the mirrored source repositories will appear as children of this parent entry in Eclipse's "Install New Software" dialog, rather than each appearing as a separate top-level entry.

For example, setting categoryName to Parent Category when mirroring EGit and TM4E will produce a single "Parent Category" entry that expands to reveal each tool's own categories, instead of showing them as individual top-level entries.

When omitted, the behaviour is unchanged: source categories appear as individual top-level entries in the destination repository.

  • Type: java.lang.String
  • Since: 5.0.3
  • Required: No

<compress>

Whether to compress the destination repository metadata files (artifacts.xml, content.xml).
  • Type: boolean
  • Required: No
  • Default: true

<currentModuleAsSource>

Whether the current build p2 output should be added as source. Ignored for non-Tycho packaging types. Ignored if targetPlatformAsSource == false;

  • Type: boolean
  • Since: 1.1.0
  • Required: No
  • Default: true

<destination>

The destination directory to mirror to.
  • Type: java.io.File
  • Required: No
  • Default: ${project.build.directory}/repository

<filter>

Filter properties. In particular, a platform filter can be specified by using keys osgi.os, osgi.ws, osgi.arch.
  • Type: java.util.Map<java.lang.String, java.lang.String>
  • Required: No

<followOnlyFilteredRequirements>

Follow only requirements which match the filter specified.
  • Type: boolean
  • Required: No
  • Default: false

<followStrictOnly>

Set to true if only strict dependencies should be followed. A strict dependency is defined by a version range only including exactly one version (e.g. [1.0.0.v2009, 1.0.0.v2009]). In particular, plugins/features included in a feature are normally required via a strict dependency from the feature to the included plugin/feature.
  • Type: boolean
  • Required: No
  • Default: false

<ignoreErrors>

If set to true, mirroring continues to run in the event of an error during the mirroring process and will just log an info message.

  • Type: boolean
  • Since: 1.1.0
  • Required: No
  • Default: false

<includeFeatures>

Whether or not to include features.
  • Type: boolean
  • Required: No
  • Default: true

<includeNonGreedy>

Whether or not to follow non-greedy requirements.
  • Type: boolean
  • Required: No
  • Default: true

<includeOptional>

Whether or not to follow optional requirements.
  • Type: boolean
  • Required: No
  • Default: true

<ius>

(Optional) Which IUs to mirror. If omitted, all IUs available in the source repositories will be mirrored. An IU must specify an id and may specify a version. If version is omitted, the latest available version will be queried. By default, IUs required by the specified IUs will also be mirrored. See also followStrictOnly, followOnlyFilteredRequirements , includeOptional, includeNonGreedy, includeFeatures.
  • Type: java.util.List<org.eclipse.tycho.plugins.p2.extras.Iu>
  • Required: No

<keepNonXzIndexFiles>

If xzCompress is true, whether jar or xml index files should be kept in addition to XZ-compressed index files. This fallback provides backwards compatibility for pre-Mars p2 clients which cannot read XZ-compressed index files.

  • Type: boolean
  • Since: 0.25.0
  • Required: No
  • Default: true

<latestVersionOnly>

Set to true to filter the resulting set of IUs to only include the latest version of each Installable Unit only. By default, all versions satisfying dependencies are included.
  • Type: boolean
  • Required: No
  • Default: false

<mirrorMetadataOnly>

Whether to mirror metadata only (no artifacts).
  • Type: boolean
  • Required: No
  • Default: false

<name>

The target repository name.
  • Type: java.lang.String
  • Required: No

<source>

Source repositori(es) to mirror from. See also targetPlatformAsSource and currentModuleAsSource
  • Type: java.util.List<org.eclipse.tycho.plugins.p2.extras.Repository>
  • Required: No

<targetPlatformAsSource>

Whether to add the target-platform content as a source. Ignored for non-Tycho packaging types.

  • Type: boolean
  • Since: 1.1.0
  • Required: No
  • Default: false

<xzCompress>

Add XZ-compressed repository index files. XZ offers better compression ratios esp. for highly redundant file content.

  • Type: boolean
  • Since: 0.25.0
  • Required: No
  • Default: true