Skip to Content.
Sympa Menu

perfsonar-dev - Re: [pS-dev] jar-repository and release process

Subject: perfsonar development work

List archive

Re: [pS-dev] jar-repository and release process


Chronological Thread 
  • From: Loukik Kudarimoti <>
  • To: Roman Lapacz <>
  • Cc: Nicolas Simar <>, "Jeff W. Boote" <>, Luís Marta <>, "" <>
  • Subject: Re: [pS-dev] jar-repository and release process
  • Date: Fri, 26 Jan 2007 10:42:51 +0000

Roman Lapacz wrote:

Now I'm thinking that if our micro release files contain all needed libraries then the problem is solved.

Just to define what a Jar repository actually is - A jar-repository is something that is maintained either by us or publicly (for example apache maven project - www.ibiblio.org/maven2). It contains 'jar' files usually required by a software that we are deploying. It can contain jar files which are our own (for example jar files for perfsonar base) or it can contain jar files that have been written by others (such as apache) but used by us in our software.

From the release point of view, the micro-release can come in many 'flavours'. It can be one or more of the following:

1) A Release tag on our SVN (sources)
2) A tar.gz file containing sources
3) A tar.gz file containing binaries

Currently, (3) will have all the required jar files, while (1) and (2) will need all the required jars to be downloaded from a repository.

Since we will distribute (3) only with perfSONAR bundle releases, the users do not need to see our jar-repository as such. However, doing (3) raises license issues because we will be re-distributing software written by other organizations (I have been reading the apache licensing recently). This is something we will have to take care of *now* because otherwise we will be breaking the license terms specified by many of these jars.

Moreover, to come to (3), we (as in either micro-release management or the bundle release-management) will have to go through (1) or (2). So, we will still be making use of a jar repository at some point in time but this is not currently seen by the users.

Maintaining our own jar repository has (at least) two major implications

(i)- dependency control
(ii) - licensing

In (i), we would want to control which jar files (and which versions) are used by all our services. This will help us in quality control (for example, if one of the jar files has a bug, we will be able to enforce (easily) all the developers using that jar to upgrade their service. Another advantage is that we can try to make sure that all the developers are using the same version of dependency (and not multiple version of the same jar file).

In (ii), by maintaining our own jar repository, we will be re-distributing software (just like we do in (3) above). Licensing issues will kick in.

These are just some thoughts. We started this discussion but didn't come to a clear understanding of what we want to do in the future.

Loukik.


Roman


Loukik Kudarimoti wrote:
There are some thoughts on this topic. We discussed this during the tech. event but couldn't make a concrete decision. For the upcoming release, whatever we have currently, seems ok (we are using primary and backup repositories). For the future, we need to discuss further (I have some new proposals which might fix this problem..but thats for the next meeting and next release).

Loukik.


Roman Lapacz wrote:
Nicolas Simar wrote:
Hi,

what is the outcome of this thread?
Any decision made? (not relevant, change done, other change proposed)

There was no interest to tie jar repository with releases. I event don't have clear idea how we could do it (using versions of jar repository? ). Anyway, it's not a big problem (if it is at all) in this moment.

Roman




Cheers,
Nicolas

Roman Lapacz wrote:

Hi,

we haven't thought about jar-repository in the release process. I wouldn't see the problem if we used only public repository with libraries maintained by other project groups. But unfortunately we created new two directories in our repository (axis and rrdjtool, the rest are copied from the public repository) and I think now we should tie them somehow with service releases. For example, if I want to create branch STABLE for RRD MA should I include also our all jar-repository or just those two directories created by us? What do you think?

Roman











Archive powered by MHonArc 2.6.16.

Top of Page