Reputation: 2404
we have several internal p2 repositories. Each repository has many versions of different features. We need to have an external update site for our clients. We would like to aggregate only specific versions of specific features. Would is a good way/tool to "aggregate" them?
For example we have a p2 repository repo1
with feature feature1
with versions 1.0.0
, 2.0.0
, 3.0.0
and another p2 repository repo2
with feature feature2
with versions 1.0.0
and 2.0.0
.
We would like to aggregate versions 1.0.0
and 3.0.0
of feature1
and version 2.0.0
of feature2
:
feature1
1.0.0
3.0.0
feature2
2.0.0
Currently we are looking at b3 and Nexus Pro. But maybe there is something better?
b3 allows only aggregating range of features and not specific versions.
Nexus Pro is more like proxy or "magic box". We want to have a separate physical copy (mirrored one) of p2 repository.
Any suggestions?
Upvotes: 2
Views: 1761
Reputation: 2404
p2.mirror
can aggregate specified features and create a p2 repository. It is possible to configure it to download only required bundles too.
Here is an example which aggregates two versions of a feature:
<p2.mirror>
<repository location="${repositoryPath}" name="My External p2 Repository" append="false" />
<source>
<repository location="http://repository:8081/p2/project1" />
<repository location="http://download.eclipse.org/eclipse/updates/3.6" />
<repository location="http://repository:8081/p2/project2" />
</source>
<iu id="dk.sorokin.maksim.feature.feature.group" version="0.0.5.201012071808" />
<iu id="dk.sorokin.maksim.feature.feature.group" version="2.0.0.201012071540" />
<slicingoptions followStrict="true" />
</p2.mirror>
Moreover, afterwards it is possible to run a eclipse.publish.featuresAndBundles
task to categorize created repository.
Upvotes: 1
Reputation: 8172
P2 has composite repository concept that should match what you're looking for.
Upvotes: 4