Bug 335980 - Build with ant and Bundlor won't update manifests in test directories
Summary: Build with ant and Bundlor won't update manifests in test directories
Status: NEW
Alias: None
Product: Virgo
Classification: RT
Component: tooling (show other bugs)
Version: unspecified   Edit
Hardware: PC Mac OS X - Carbon (unsup.)
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-01 10:53 EST by Chris Frost CLA
Modified: 2011-05-16 05:24 EDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Frost CLA 2011-02-01 10:53:01 EST
This works under Eclipse and can cause a lot of issues when doing significant version updates and the version ranges for a lot of tests have to be updated manually. This is quite painful and has definitely been working in the past.

This can be reproduced by changing a major version in build.versions then running test from ant and you will see the test manifest is not updated, the test will also fail if you wipe the ivy cache first.
Comment 1 Chris Frost CLA 2011-03-29 18:51:57 EDT
When writting the manifest either in Eclipse or via an Ant build it will end up using a FileSystemManifestWriter. This hard codes the path to Manifest as 'META-INF/MANIFEST.MF'. I believe the tooling is providing some special extra support for the writing of test manifests and that this has in fact never worked.
Comment 2 Chris Frost CLA 2011-03-29 19:28:05 EDT
Seeing as the tooling code has recently been added to Git I checked it out and had a look at the Bundlor support it adds. I quickly found all the test.mf code, (org.eclipse.virgo.ide.bundlor.internal.core.BundlorProjectBuilder). 

So this isn't a bug and is working as designed and I'm not sure how I haven't noticed this before. I'm not confident that this support could be moved over to the core bundlor code as it is dependent on some smarts from the tooling that knows when a project is a test project or not. I'm not sure about the Eclispe APIs but I'm guessing this comes from a property set by flagging the project as a test project within it's properties (right click on the project, look under spring tools).
Comment 3 Nobody - feel free to take it CLA 2011-03-30 03:56:00 EDT
I would imagine that bundlor simply needs additional parameters to enable it to support this scenario.
Comment 4 Chris Frost CLA 2011-03-30 20:25:50 EDT
I'm not sure where it would get these parameters from though, a special header in the template.mf file to indicate that it's a test bundle maybe?
Comment 5 Nobody - feel free to take it CLA 2011-03-31 04:15:55 EDT
Sounds reasonable.
Comment 6 Nobody - feel free to take it CLA 2011-05-16 05:24:22 EDT
Assigning to tooling component as this is a nice to have enhancement in bundlor.