ctron / package-drone

An OSGI first software artifact repository – Moved to the Eclipse Foundation
https://github.com/eclipse/packagedrone
Eclipse Public License 1.0
39 stars 13 forks source link

Aspect "P2 Metadata Generator" should honor "Eclipse-BundleShape" #148

Open SvenEwald opened 7 years ago

SvenEwald commented 7 years ago

We like to use PD as a collecting P2 repository where multiple projects deploy bundles to be used in further product builds. This prevents us from using the tycho generated p2 metadata, because each deployment would overwrite previous metadata and hide other deployments. Thus we use the tycho cleaner aspect and the P2 Metadata Generator which almost works. There is one big hickup: In contrast to the tycho generated metadata, the generated metadata does not use the "Eclipse-BundleShape" tag. The effect is that all bundles comming from a PackageDrone repository are zipped in product build results which is an error for some bundles. (e.g. JUnit & bundles with native code). We can fix this error by using the tycho metadata, but this way we need a large number of repositories and can not collect bundles to a single repo.

Possible Solution would be that PD would generate the same metadata for bundles that need to be unpacked that tycho generates:

The difference in the content.xml for bundles with "Eclipse-BundleShape: dir" is one more instruction in the touchpoinData: `

true Bundle-SymbolicName: ...

instead of the current generated content.xml:

Bundle-SymbolicName: ...

` Of course, the additional touchpoint instruction must be present only when the "Eclipse-BundleShape" is set to "dir".