Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
SvenEwald opened this issue Mar 31, 2017 · 0 comments
Open

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

SvenEwald opened this issue Mar 31, 2017 · 0 comments

Comments

@SvenEwald
Copy link

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:
<touchpointData size='1'> <instructions size='2'> <instruction key='zipped'> true </instruction> <instruction key='manifest'> Bundle-SymbolicName: ... </instruction> </instructions> </touchpointData>
instead of the current generated content.xml:
<touchpointData size='1'> <instructions size='1' <instruction key='manifest'> Bundle-SymbolicName: ... </instruction> </instructions> </touchpointData>
Of course, the additional touchpoint instruction must be present only when the "Eclipse-BundleShape" is set to "dir".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant