Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-user] Searching for a Masterthesis in combination with Tycho

Title: Re: [tycho-user] Searching for a Masterthesis in combination with Tycho

Hi Jörg,


Sorry for my late answer.


About the question of hosting release train repositories in Nexus: Yes, we also use Nexus and the unzip plugin for release train repositories. For each one of the new releases (i.e. R, SR1, SR2), we create a new zip archive and upload it.


I’m not aware of any problems unzipping this repository, except that it takes a while. So we warm up the unzip cache directly after the upload through a GET on one of the files inside the zip. This is also done on each Nexus mirror – we have a Nexus mirroring the main Nexus in every major development location – so that replication and unzipping is triggered on the mirrors.




From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-bounces@xxxxxxxxxxx] On Behalf Of "Sesterhenn, Jörg"
Sent: Montag, 14. Juli 2014 08:23
To: Tycho user list
Subject: Re: [tycho-user] Searching for a Masterthesis in combination with Tycho


Hi Tobias,

Am 11.07.2014 11:46, schrieb Oberlies, Tobias:

> Possibilities I thought about:
> 1. Developing a simple Repository management for P2-Artifacts.
> I tried a lot with Reporitymanagement-System like Nexus ... But non of
> them can understand P2 out of the box and are easy to use.
Before you start something new, really make sure that you fully understand all of the existing approaches. I've seen far too often that computer scientists in academia start something new without properly looking into existing projects and options to evolve these.
One thing which doesn't exist is "p2 central", i.e. something like Maven central for p2 artifacts. Sonatype has tried to develop this with experts in Nexus, Maven, Tycho and p2, but the project failed. The reason is that p2 repositories can't be scaled to the size of Maven central, which is far, far beyond the size of the repositories that exist today - the largest ones being the Eclipse release train repositories.
However there would be ways to unify Maven and p2 repositories which don't try to break the "sound barrier" of p2. Starting from the approach to deploy p2 repositories as Maven artifacts and serving them with the Unzip Plugin, this could be optimized to an individual Maven deploy of the feature and bundle JARs, plus a deployments of a p2 repository only consisting of metadata. In this way, all p2 artifacts would be stored as Maven artifacts in the Maven repository, and the deployed p2 repositories would be views on a subset of all p2 artifacts in the Maven repository.

We are actually using your approach. Thanks for all you have done and are still doing. I'd really wish sonatype would include and support your work in Nexus as a core plugin, since it beats anything they have ever done in that direction.
Have you ever tried to host a large releasetrain (e.g. kepler sr2 > 4 GB) as a maven artifact? When I tried this Nexus went down. I guess the unzip process kills nexus.
Do you have a different approach for these large repositories, or is that something we need to come by with more hardware resources (more RAM)? Would you care to elaborate on your setup at SAP?

Looking into "Unifying Maven and p2 repositories" would probably something which is both interesting as academic question and in practical use.

I guess that a sound solution to this must be worth money to some (we'd buy it anyways). Maybe drop the idea of doing a masterthesis and go for kickstarter instead ;-)

@Felix: please consider what Tobias said. We also went down the "lets write a simple p2 repository manager" road and it lead to nowhere.

Best regards,

Jörg Sesterhenn

Back to the top