Great! Never having looked at the OBR implementation I can't really say
which is the best path. I'm imagining that they have some code that reads
repositories and some code that does resolution etc. What you need is the
repository reading/parsing code. You would take that input information in
and create a matching metadata repo and artifact repo object in p2. These
would be primed with InstallableUnits (IUs) and artifact descriptors
(respectively). From there on the OBR stuff would show up in p2 just like
anything else and you can install etc using the p2 resolution strategies
etc.
Simon is doing something similar to this right now for update sites. He
has a harder challenge because update sites don't have alot of metadata
that is easily accessible. OBR seems to have more metadata so should be
easier to integrate.
I would recommend against trying to mix OBR's resolver and artifact
fetching etc with that of p2. Feels like there will be conflicts and
strangeness that cannot easily be contained in the UI and the end result
will confuse users. Anyway, that is the path that I would go.
Perhaps the best place to start is by looking at the p2
SimpleMetadataRepository and SimpleArtifactRepository classes as well as
the org.eclipse.equinox.p2.updatesite bundle. These do not directly fit
what you are doing but what you need is likely some combination of the two
and something that can parse OBR repos. Note also that OBR has repo
federation that is currently not supported by p2 (though it seems like a
good idea). For now I would start simple and go for just one OBR repo at
a time. You can find the Europa OBR repo at
download.eclipse.org/releases/europa/repository.zip
Does this make sense?
Jeff
Thomas Hallgren <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED]
01/11/2008 10:46 AM
Please respond to
Equinox development mailing list <[email protected]>
To
Equinox development mailing list <[email protected]>
cc
Subject
Re: [equinox-dev] OBR
I agree with this and I'd be willing to actually write the OBR
repository adaptor for p2. Would you agree that the simplest way to do
that is probably to write it on top of the OBR API's and the Felix
bundle repository implementation?
- thomas
Jeff McAffer wrote:
>
> We currently do host an OBR repo with the major releases. Don't
> remember the URL but the required repository.xml/zip file is there for
> Callisto and Europa. The OBR client code may be interesting but our
> strategic direction is p2. For the most part p2 has (or can be made
> to have) the same functionality as the OBR client but goes further
> towards solving the wider range of problems we see in the Eclipse
> provisioning space.
>
> I am all for supporting the use of OBR repositories in the sense that
> some people will make their function available that way. Given the p2
> work however, it would be more interesting (to me at least) to write
> an OBR repository adaptor for p2 than to use the OBR api. Further, I
> hope that eclipse projects will feel comfortable making their content
> available as p2 repositories so that the Eclipse user community is not
> put in a position of having to get many different provisioning clients.
>
> In short, we in p2 would very much like to have your interaction and
> participation in making a provisioning solution that solves your needs.
>
> Jeff
>
>
>
> *Thomas Hallgren <[EMAIL PROTECTED]>*
> Sent by: [EMAIL PROTECTED]
>
> 01/11/2008 10:19 AM
> Please respond to
> Equinox development mailing list <[email protected]>
>
>
>
> To
> Equinox development mailing list
<[email protected]>
> cc
>
> Subject
> [equinox-dev] OBR
>
>
>
>
>
>
>
>
>
> Hi,
> I'm wonder if any work has been done within Eclipse to deal with OBR
> repositories, and if so, how can I get access to that. If not, and if no
> one has a better idea, I'm planning to start an IP-zilla to get the
> Apache Felix OBR approved since we will want to map that kind of
> repositories in Buckminster and also provide OBR's as an alternative to
> update sites in the spaces project.
>
> Regards,
> Thomas Hallgren
>
> _______________________________________________
> equinox-dev mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> equinox-dev mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
>
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev