Community
Participate
Working Groups
Since Libra has its own build, we need to coordinate how to "merge" the repositories, especially for milestones, and releases. I suggest we simply use a composite repo, which "points to" each of the separate repos. To start, you might want to look at our webtools "indigo" repo (which has webtools M5 in it). From a shell, you can see it at /home/data/httpd/download.eclipse.org/webtools/repository/indigo If you were to expand its compositeContent.jar to compositeContent.xml it would look like the following. <?xml version='1.0' encoding='UTF-8'?> <?compositeMetadataRepository version='1.0.0'?> <repository name='The Eclipse Web Tools Platform (WTP) software repository' type='org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository' version='1'> <properties size='2'> <property name='p2.timestamp' value='1299078933666'/> <property name='p2.compressed' value='true'/> </properties> <children size='1'> <child location='http://download.eclipse.org/webtools/downloads/drops/R3.3.0/S-3.3.0M5-20110127064115/repository/'/> </children> </repository> So, the idea is to just add another child that would point specifically to the libra repository. So add repos to these composites, it is best to use p2 API, via an ant task. I use one similar to the following: $ cat makeComposite.xml <project default="createcomposite" basedir="."> <target name="createcomposite"> <p2.composite.repository> <repository location="file:/home/data/httpd/download.eclipse.org/webtools/repository/indigo/" name="The Eclipse Web Tools Platform (WTP) software repository"/> <add> <repository location='http://download.eclipse.org/webtools/downloads/drops/R3.3.0/S-3.3.0M5-20110127064115/repository/'/> </add> </p2.composite.repository> </target> </project>
One thing to figure out, is how to coordinate "categories". Should at least be similar names, if not identical. For webtools, we currently use something like the following in category.xml, so for each build, it is a slight different name: <feature id="org.eclipse.jst.web_ui.feature"> <category name="Web Tools Platform (WTP) @buildversionid@"/> </feature> <feature id="org.eclipse.jst.web_sdk.feature"> <category name="Web Tools Platform SDK (WTP SDK) @buildversionid@"/> </feature> That is, @buildversionid@ is replaced with the build label, such as I-3.3.0-20110303220333 (I think ... I'd have to confirm, but don't think this gets changed to "S", or anything). Note we have "SDK" category, and the lessor "executable only" category. (We also have a test category, bug keep that in a separate repo, and is not currently aggregated for milestones or anything ... just each build). Suggestions?
David, I've created a repository for the Libra 0.1 M6 build at the following location: http://download.eclipse.org/libra/milestones/S-0.1.0M6-201103111139/repository/ I am not sure about the business with the categories. Currently, we build only non-SDK plugins for Libra. Perhaps, we can build SDK plugins for M7. The features in the above repository are put in a single category labeled "Enterprise Tools for the OSGi Service Platform". What should I change so these features are shown under the "Web Tools Platform ..." category once I add the repository to the composite webtools indigo repo? I've noticed that the WTP features are shown in the indigo discovery repo under a category with completely different name: "Web, XML and Java EE Development". How is this achieved? I would like to have the Libra features in the indigo discovery repo under a category that contains "OSGi" or even better "OSGi Enterprise" in its name - like "Web, XML, Java EE and OSGi Enterprise Development". Will this be possible?
> I've created a repository for the Libra 0.1 M6 build at the following location: > > http://download.eclipse.org/libra/milestones/S-0.1.0M6-201103111139/repository/ > > I am not sure about the business with the categories. Currently, we build only > non-SDK plugins for Libra. Perhaps, we can build SDK plugins for M7. > > The features in the above repository are put in a single category labeled > "Enterprise Tools for the OSGi Service Platform". > > What should I change so these features are shown under the "Web Tools Platform > ..." category once I add the repository to the composite webtools indigo repo? > It is "fixed" (now) based on your repository (the way we do categories, in our wtp site). Not sure what to do for future. > I've noticed that the WTP features are shown in the indigo discovery repo under > a category with completely different name: "Web, XML and Java EE Development". > How is this achieved? > We have a special indigo contribution file for the common repository, where categories are named/created independently of their original repositories. > I would like to have the Libra features in the indigo discovery repo under a > category that contains "OSGi" or even better "OSGi Enterprise" in its name - > like "Web, XML, Java EE and OSGi Enterprise Development". Will this be > possible? Yes, I can change whole category label, and put your libra features in there (which will have a "pointer" to your repository ... so, don't change that :) unless you let me know ... or, update the contribution file. For now, I'd prefer to update the contribution file, so let me know if you need changes. But, for future reference, the contribution files are contained in a module named org.eclipse.indigo.build in /cvsroot/callisto The general process and tools is described in http://wiki.eclipse.org/Indigo/Contributing_to_Indigo_Build I'll try one run (now running) just adding the libra repo and features. Once that goes ok, will look into update category name/label (since that'll end up touching several files, from others ... RAP Tools and PHP).
Please test to confirm all works as expected. I checked that they "show up" in categories, and the aggregator apparently does "pull" the Libra features just fine, but I have not tested actually installing into an IDE. Our WTP M6 repo is ready http://download.eclipse.org/webtools/repository/indigo And staging for the common repository has our M6 content in it http://download.eclipse.org/releases/staging I suspect we need to work on the later to make it more understandable, or smaller ... but, for M6 that's what we've got.
Daivd, everything looks good to me. Thanks for integrating the libra repository in the indigo common repository. I will make my best to learn this integration mechanism for M7. BTW, I found a minor issue in the WTP Indigo M6 repo: bug 340107.