Hi all,
(sorry for the massive crosspost up front, as this is a proposal that should in the end come from the various PMCs towards the infrastructure team I'm doing lots of CCing, just once)
I've been giving this some thought. It has been pointed out that the primary distribution location for all apache projects should be an apache machine (board position, that is, and I guess mostly everyone agrees). It has also become evident that it makes sense to have the distribution repository structured in such a way that a software tool can understand it, and that it is very valuable for java-based projects to distribute jar files as well as zipped/tar+gzipped distributions (closest analogy is probably that it makes sense to ship an apache httpd msi in addition to a tar/gz). Finally, it is desirable to make use of the existing distribution mirroring setup already in place for apache to keep actual load on asf machines and the network as a whole as low as possible.
Based on the above, I suggest we create such a machine-readable repository @ daedalus.apache.org:/www/www.apache.org/dist/java-repository using the de-facto common repository format pioneered by maven and supported in centipede, supported in Ant using RuperTask or a simple script (http://cvs.apache.org/viewcvs.cgi/avalon/check-targets.ent), and easily supported in any software too that can do an HTTP GET and a sprintf(). The use of this repository is simply to contain symlinks to the various distributions in /www/www.apache.org/dist of the various projects.
I am specifically _not_ suggesting that this repository should distribute other project distributions (like junit.jar). ASF is not in the mirroring business atm. Though I wouldn't have a problem if we were to change that, I doubt it'll increase the likelyhood of this proposal getting through and it would hence take more work :D
As all java-based projects could benefit from having their software symlinked from this repository, it is probably useful if all committers with accounts on daedalus and that are part of the apcvs group (I think that's everyone by definition :D) gain access to the repository. Individual projects can then create dirs in the repository and tighten permissions, ie one would do something like
cd /www/www.apache.org/ mkdir avalon-framework chown -Rf leosimons:avalon avalon-framework chmod -Rf 775 avalon-framework cd avalon-framework ln -s /www/www.apache.org/LICENSE.txt mkdir distributions mkdir jars cd distributions ln -s ../../../avalon/framework/latest/*.tar.gz ln -s ../../../avalon/framework/latest/*.zip # ... ln -s ../../../avalon/framework/v4.0/*.tar.gz ln -s ../../../avalon/framework/v4.0/*.zip ln -s /www/www.apache.org/LICENSE.txt cd ../jars ln -s ../../../avalon/framework/latest/avalon-framework-4.1.4.jar # ... ln -s ../../../avalon/framework/v4.0/avalon-framework-4.0.jar ln -s /www/www.apache.org/LICENSE.txt
An alternative is of course to create an apjarrepo group consisting of perhaps a committer subset; I'd like to leave that choice up to the infrastructure team. If that is a better idea, please tell us so we can figure out a list of people who should be part of that group. Normally, I'd just ask the infrastructure peeps to
umask 002 mkdir /www/www.apache.org/dist/java-repository chown :apcvs /www/www.apache.org/dist/java-repository
and get things started, but given the unusual (well, maybe not ;) amount of controversy I think it makes sense to get noses in the right direction on this first. I would like to invite everyone to follow-up on this matter on community@apache.org, hold a (hopefully, brief & productive) discussion, vote on a revised proposal (I'll happily volunteer for tallying things up), and format the results of that (assuming that my proposal gets through :D) as a request by all the involved java-related PMCs to have the infrastructure peeps do a 'mkdir java-repository'.
Note the legal headache or impact caused by all this is zero: we are only providing convenience URLs for things apache already distributes.
Also note the likely diskspace and bandwidth impact is also near zero: this repository would be automatically mirrored by the existing apache mirrors.
Third, note the complete simplicity: it works out of the box with all existing build tools (that I know of), and the additional overhead impact on the infrastructure team is a single mkdir/chown.
Finally, note the ease with which existing repositories like www.ibiblio.org/maven/ can be made to mirror this repository: rsync is already in place and available.
so, thoughts?
cheers all,
- Leo
Greg Stein pretty much summarized: > I don't see why we need to do anything. Distribute from daedalus. Ibiblio > can rsync it over. What more is needed? <snip/>
Andrew C. Oliver got the discussion started:
> I think the maven repository should be Apache's primary distribution of all Jakarta/XML projects.
<snip/>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]