Fork me on GitHub

tycho-p2-repository:modify-repository-properties

Full name:

org.eclipse.tycho:tycho-p2-repository-plugin:6.0.0-SNAPSHOT:modify-repository-properties

Description:

Modifies metadata of a P2-repository like its name or properties.

This can be used to customize metadata of a just assembled repository or to modify an already existing (remote) repository. The modified repository metadata files (artifact.xml/jar/xml.xz or content.xml/jar/xml.xz) are always written to a local file. For a remote repository a suitable other tool (like SSH) must be used to copy these files subsequently back to the remote server.

Attributes:

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

Optional Parameters

Name Type Since Description
<compress> boolean - Compress the repository index files content.xml and artifacts.xml.
Default: true
User Property: p2.repository.compress
<keepNonXzIndexFiles> boolean - 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
User Property: p2.repository.xz.keep
<outputLocation> Path - Optional output location where the modified metadata files (artifact.xml/jar/xml.xz or content.xml/jar/xml.xz) are written to.
If not specified or equals to repository the source repository is modified in-place.
User Property: p2.repository.output
<propertiesToAdd> Map<String,String> - The properties to add.
Already existing properties are overwritten and updated to the value specified.
User Property: p2.repository.properties.add
<propertiesToRemove> List<String> - The properties to remove.
Properties that don't exist in the repository are just silently ignored.
User Property: p2.repository.properties.remove
<repository> Repository - Location of the source repository to modify.
May be the Path of a local file or URL/URI to a remote repository.
If this is set to a remote URL the outputLocation must be set to a local path as remote locations cannot be written.
<repositoryKind> P2RepositoryKind - The kind of modified repository: Either artifact, metadata.
If artifact is specified, only the artifact.xml/jar/xml.xz files are modified, if metadata only content.xml/jar/xml.xz. By default (if blank) both are modified.
User Property: p2.repository.kind
<repositoryName> String - Optional repository name to set. An existing name is overwritten.
User Property: p2.repository.name
<xzCompress> boolean - Add XZ-compressed repository index files. XZ offers better compression ratios esp. for highly redundant file content.
Default: true
User Property: p2.repository.xz

Parameter Details

<compress>

Compress the repository index files content.xml and artifacts.xml.
  • Type: boolean
  • Required: No
  • User Property: p2.repository.compress
  • Default: true

<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
  • Required: No
  • User Property: p2.repository.xz.keep
  • Default: true

<outputLocation>

Optional output location where the modified metadata files (artifact.xml/jar/xml.xz or content.xml/jar/xml.xz) are written to.
If not specified or equals to repository the source repository is modified in-place.
  • Type: java.nio.file.Path
  • Required: No
  • User Property: p2.repository.output

<propertiesToAdd>

The properties to add.
Already existing properties are overwritten and updated to the value specified.
  • Type: java.util.Map<java.lang.String, java.lang.String>
  • Required: No
  • User Property: p2.repository.properties.add

<propertiesToRemove>

The properties to remove.
Properties that don't exist in the repository are just silently ignored.
  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: p2.repository.properties.remove

<repository>

Location of the source repository to modify.
May be the Path of a local file or URL/URI to a remote repository.
If this is set to a remote URL the outputLocation must be set to a local path as remote locations cannot be written.
  • Type: org.apache.maven.model.Repository
  • Required: No

<repositoryKind>

The kind of modified repository: Either artifact, metadata.
If artifact is specified, only the artifact.xml/jar/xml.xz files are modified, if metadata only content.xml/jar/xml.xz. By default (if blank) both are modified.
  • Type: org.eclipse.tycho.p2maven.repository.P2RepositoryKind
  • Required: No
  • User Property: p2.repository.kind

<repositoryName>

Optional repository name to set. An existing name is overwritten.
  • Type: java.lang.String
  • Required: No
  • User Property: p2.repository.name

<xzCompress>

Add XZ-compressed repository index files. XZ offers better compression ratios esp. for highly redundant file content.
  • Type: boolean
  • Required: No
  • User Property: p2.repository.xz
  • Default: true