blob: 24700ad17bc1684798fa4a204ec25113b7f956bc [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated by maven-plugin-tools 3.6 -->
<plugin>
<name>p2 Extras Plugin</name>
<description>Additional tools for Tycho</description>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-p2-extras-plugin</artifactId>
<version>1.5.1-SNAPSHOT</version>
<goalPrefix>tycho-p2-extras</goalPrefix>
<mojos>
<mojo>
<goal>compare-version-with-baselines</goal>
<description>This mojo compares versions the output artifacts of your module build with the version of the same artifacts available in configured baselines, in order to detect version inconsistencies (version moved back, or not correctly bumped since last release). Rules for &apos;illegal&apos; versions are:
- version decreased compared to baseline
- same fully-qualified version as baseline, but with different binary content
- same major.minor.micro as baseline, with different qualifier (at least micro should be increased)
- This mojo doesn&apos;t allow to use qualifier as a versioning segment and will most likely drive to false-positive errors if your qualifier has means to show versioniterations.
</description>
<requiresDirectInvocation>false</requiresDirectInvocation>
<requiresProject>false</requiresProject>
<requiresReports>false</requiresReports>
<aggregator>false</aggregator>
<requiresOnline>false</requiresOnline>
<inheritedByDefault>true</inheritedByDefault>
<phase>verify</phase>
<implementation>org.eclipse.tycho.plugins.p2.extras.CompareWithBaselineMojo</implementation>
<language>java</language>
<instantiationStrategy>per-lookup</instantiationStrategy>
<executionStrategy>once-per-session</executionStrategy>
<threadSafe>false</threadSafe>
<parameters>
<parameter>
<name>baselines</name>
<type>java.util.List</type>
<required>false</required>
<editable>true</editable>
<description>A list of p2 repositories to be used as baseline. Those are typically the most recent released versions of your project.</description>
</parameter>
<parameter>
<name>onIllegalVersion</name>
<type>org.eclipse.tycho.plugins.p2.extras.CompareWithBaselineMojo$ReportBehavior</type>
<required>false</required>
<editable>true</editable>
<description></description>
</parameter>
<parameter>
<name>skip</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description></description>
</parameter>
</parameters>
<configuration>
<baselines implementation="java.util.List">${baselines}</baselines>
<onIllegalVersion implementation="org.eclipse.tycho.plugins.p2.extras.CompareWithBaselineMojo$ReportBehavior" default-value="fail">${onIllegalVersion}</onIllegalVersion>
<skip implementation="boolean">${skip}</skip>
</configuration>
</mojo>
<mojo>
<goal>mirror</goal>
<description>Maven plugin front-end for org.eclipse.equinox.p2.internal.repository.tools.MirrorApplication. Intended as a replacement for the p2.mirror ant task.</description>
<requiresDirectInvocation>false</requiresDirectInvocation>
<requiresProject>true</requiresProject>
<requiresReports>false</requiresReports>
<aggregator>false</aggregator>
<requiresOnline>false</requiresOnline>
<inheritedByDefault>true</inheritedByDefault>
<implementation>org.eclipse.tycho.plugins.p2.extras.MirrorMojo</implementation>
<language>java</language>
<instantiationStrategy>per-lookup</instantiationStrategy>
<executionStrategy>once-per-session</executionStrategy>
<threadSafe>false</threadSafe>
<parameters>
<parameter>
<name>append</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>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.</description>
</parameter>
<parameter>
<name>compress</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Whether to compress the destination repository metadata files (artifacts.xml, content.xml).</description>
</parameter>
<parameter>
<name>currentModuleAsSource</name>
<type>boolean</type>
<since>1.1.0</since>
<required>false</required>
<editable>true</editable>
<description>Whether the current build p2 output should be added as source. Ignored for non-Tycho packaging types. Ignored if targetPlatformAsSource == false;
</description>
</parameter>
<parameter>
<name>destination</name>
<type>java.io.File</type>
<required>false</required>
<editable>true</editable>
<description>The destination directory to mirror to.</description>
</parameter>
<parameter>
<name>filter</name>
<type>java.util.Map</type>
<required>false</required>
<editable>true</editable>
<description>Filter properties. In particular, a platform filter can be specified by using keys osgi.os, osgi.ws, osgi.arch.</description>
</parameter>
<parameter>
<name>followOnlyFilteredRequirements</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Follow only requirements which match the filter specified.</description>
</parameter>
<parameter>
<name>followStrictOnly</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>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.</description>
</parameter>
<parameter>
<name>ignoreErrors</name>
<type>boolean</type>
<since>1.1.0</since>
<required>false</required>
<editable>true</editable>
<description>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.
</description>
</parameter>
<parameter>
<name>includeFeatures</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Whether or not to include features.</description>
</parameter>
<parameter>
<name>includeNonGreedy</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Whether or not to follow non-greedy requirements.</description>
</parameter>
<parameter>
<name>includeOptional</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Whether or not to follow optional requirements.</description>
</parameter>
<parameter>
<name>includePacked</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Whether or not to include pack200 artifacts.</description>
</parameter>
<parameter>
<name>ius</name>
<type>java.util.List</type>
<required>false</required>
<editable>true</editable>
<description>(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.</description>
</parameter>
<parameter>
<name>keepNonXzIndexFiles</name>
<type>boolean</type>
<since>0.25.0</since>
<required>false</required>
<editable>true</editable>
<description>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.
</description>
</parameter>
<parameter>
<name>latestVersionOnly</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>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.</description>
</parameter>
<parameter>
<name>mirrorMetadataOnly</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Whether to mirror metadata only (no artifacts).</description>
</parameter>
<parameter>
<name>name</name>
<type>java.lang.String</type>
<required>false</required>
<editable>true</editable>
<description>The target repository name.</description>
</parameter>
<parameter>
<name>source</name>
<type>java.util.List</type>
<required>false</required>
<editable>true</editable>
<description>Source repositori(es) to mirror from.</description>
</parameter>
<parameter>
<name>targetPlatformAsSource</name>
<type>boolean</type>
<since>1.1.0</since>
<required>false</required>
<editable>true</editable>
<description>Whether to add the target-platform content as a source. Ignored for non-Tycho packaging types.
</description>
</parameter>
<parameter>
<name>xzCompress</name>
<type>boolean</type>
<since>0.25.0</since>
<required>false</required>
<editable>true</editable>
<description>Add XZ-compressed repository index files. XZ offers better compression ratios esp. for highly redundant file content.
</description>
</parameter>
</parameters>
<configuration>
<append implementation="boolean" default-value="true"/>
<compress implementation="boolean" default-value="true"/>
<currentModuleAsSource implementation="boolean" default-value="true"/>
<destination implementation="java.io.File" default-value="${project.build.directory}/repository"/>
<followOnlyFilteredRequirements implementation="boolean" default-value="false"/>
<followStrictOnly implementation="boolean" default-value="false"/>
<ignoreErrors implementation="boolean" default-value="false"/>
<includeFeatures implementation="boolean" default-value="true"/>
<includeNonGreedy implementation="boolean" default-value="true"/>
<includeOptional implementation="boolean" default-value="true"/>
<includePacked implementation="boolean" default-value="true"/>
<keepNonXzIndexFiles implementation="boolean" default-value="true"/>
<latestVersionOnly implementation="boolean" default-value="false"/>
<mirrorMetadataOnly implementation="boolean" default-value="false"/>
<targetPlatformAsSource implementation="boolean" default-value="false"/>
<xzCompress implementation="boolean" default-value="true"/>
</configuration>
</mojo>
<mojo>
<goal>publish-features-and-bundles</goal>
<description>This goal invokes the feature and bundle publisher on a folder.</description>
<requiresDirectInvocation>false</requiresDirectInvocation>
<requiresProject>true</requiresProject>
<requiresReports>false</requiresReports>
<aggregator>false</aggregator>
<requiresOnline>false</requiresOnline>
<inheritedByDefault>true</inheritedByDefault>
<implementation>org.eclipse.tycho.plugins.p2.extras.PublishFeaturesAndBundlesMojo</implementation>
<language>java</language>
<instantiationStrategy>per-lookup</instantiationStrategy>
<executionStrategy>once-per-session</executionStrategy>
<threadSafe>false</threadSafe>
<parameters>
<parameter>
<name>additionalArgs</name>
<type>java.lang.String</type>
<required>false</required>
<editable>true</editable>
<description>Optional line of additional arguments passed to the p2 application launcher.</description>
</parameter>
<parameter>
<name>append</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Optional flag to append artifacts to an existing repository</description>
</parameter>
<parameter>
<name>artifactRepositoryLocation</name>
<type>java.lang.String</type>
<required>false</required>
<editable>true</editable>
<description>Location of the artifact repository to write. Note: The AssembleRepositoryMojo of tycho-p2-repository-plugin will only work with the predefined default ${project.build.directory}/repository.</description>
</parameter>
<parameter>
<name>compress</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Create compressed jars rather than plain xml</description>
</parameter>
<parameter>
<name>forkedProcessTimeoutInSeconds</name>
<type>int</type>
<required>false</required>
<editable>true</editable>
<description>Kill the forked process after a certain number of seconds. If set to 0, wait forever for the process, never timing out.</description>
</parameter>
<parameter>
<name>metadataRepositoryLocation</name>
<type>java.lang.String</type>
<required>false</required>
<editable>true</editable>
<description>Location of the metadata repository to write. The AssembleRepositoryMojo of tycho-p2-repository-plugin will only work with the predefined default ${project.build.directory}/repository.</description>
</parameter>
<parameter>
<name>project</name>
<type>org.apache.maven.project.MavenProject</type>
<required>false</required>
<editable>true</editable>
<description></description>
</parameter>
<parameter>
<name>publishArtifacts</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Publish artifacts to repository</description>
</parameter>
<parameter>
<name>reusePack200Files</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>Optional flag to include .pack.gz files</description>
</parameter>
<parameter>
<name>sourceLocation</name>
<type>java.lang.String</type>
<required>false</required>
<editable>true</editable>
<description>Location with features and/or plugins directories on which the features and bundles publisher shall be called.</description>
</parameter>
</parameters>
<configuration>
<append implementation="boolean" default-value="false"/>
<artifactRepositoryLocation implementation="java.lang.String" default-value="${project.build.directory}/repository"/>
<compress implementation="boolean" default-value="true"/>
<forkedProcessTimeoutInSeconds implementation="int" default-value="0">${p2.timeout}</forkedProcessTimeoutInSeconds>
<metadataRepositoryLocation implementation="java.lang.String" default-value="${project.build.directory}/repository"/>
<project implementation="org.apache.maven.project.MavenProject">${project}</project>
<publishArtifacts implementation="boolean" default-value="true"/>
<reusePack200Files implementation="boolean" default-value="false"/>
<sourceLocation implementation="java.lang.String" default-value="${project.build.directory}/source"/>
</configuration>
</mojo>
</mojos>
</plugin>