Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 324991

Summary: Virgo with Eclipse-like structure
Product: [RT] Virgo Reporter: Borislav Kapukaranov <b.kapukaranov>
Component: unknownAssignee: Borislav Kapukaranov <b.kapukaranov>
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: eclipse, glyn.normington, hsiliev, zteve.powell
Version: unspecified   
Target Milestone: 3.5.0.M01   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Bug Depends on: 333641, 333668    
Bug Blocks: 322978, 364571    
Attachments:
Description Flags
Patch for Virgo launcher to be able to read config.ini correctly
none
The file structure changes patch in Virgo kernel's build files none

Description Borislav Kapukaranov CLA 2010-09-10 12:30:51 EDT
Build Identifier: 2.1.0.M04-incubation

Currently Virgo has a very different file structure than the one used in Eclipse products and used by the P2 provisioning system. Since P2 requires specific Eclipse-like structure, adopting it to Virgo will enable it to be more easily provisioned with P2 in future when there will be some P2 Virgo repositories.

I've provided two patches that provide Eclipse-like file structure to Virgo.
One contains changes in the kernel project, in its packaging configurations, also config.ini file is included. 
The other patch changes the launcher in order to provide support for reading standard osgi properties such as these in the config.ini file (osgi.bundles instead of launcher.bundles) and to becoma aware of the slightly different syntax of the osgi.bundles property (startlevels etc.)

I didn't reported them separately since they are logically bound.

Also i've tested if Virgo with the new file structure applied is still compatible with STS(Springsource Tool Suite), and it is with little configuration required, that would most likely be avoided if the Virgo server adaptor adopts the new structure.
In order to run Virgo in STS now one needs to
1.change the path to the launcher properties to the path to the config.ini file
2.change the path to the java profile from 'lib' to 'plugins' 
3.change the path to the configuration area from osgi to configuration folder as is in the standard Equinox distribution (where the config.ini is located)
4. use the proper working directory

In order for all this to work the launcher patch must be applied first so that the kernel can download the updated version when it packages the Virgo zip file.

What do you think about that? 

Best Regards
Borislav

Reproducible: Always
Comment 1 Borislav Kapukaranov CLA 2010-09-10 12:32:02 EDT
Created attachment 178632 [details]
Patch for Virgo launcher to be able to read config.ini correctly
Comment 2 Borislav Kapukaranov CLA 2010-09-10 12:32:43 EDT
Created attachment 178633 [details]
The file structure changes patch in Virgo kernel's build files
Comment 3 Glyn Normington CLA 2010-09-13 08:48:27 EDT
This looks like a reasonable change but probably something we'll want to do post 2.1.0.

One clarification for readers of this bug: I believe the proposal is to change the file structure of the built kernel rather than the source directory layout (the latter would be pretty scary across all our repos).
Comment 4 Borislav Kapukaranov CLA 2010-09-13 08:59:13 EDT
Good clarification, Glyn! Indeed the bug/enhancement is about changing the file structure of the built kernel.
Comment 5 Borislav Kapukaranov CLA 2010-09-14 04:29:30 EDT
This enhancement will block bug 322978. The proposed p2 repositories proposed there will have to be changed to comply with the new file structure proposed in this enhancement. However since the new file structure is p2 friendly that will lead to a simplification of the 322978's p2 repo patch proposal.
Comment 6 Borislav Kapukaranov CLA 2011-12-29 06:35:56 EST
Fixed in the Nano branch. All other distributions inherit the structure from there.