Re: Maven and repository@apache.org

2005-01-07 Thread Leo Simons
Hi gang,

On 05-01-2005 09:39, Nicola Ken Barozzi [EMAIL PROTECTED] wrote:
 What relationship does the repository list have with Maven?
 What relationship does Maven have with the repository list?
 
 Ass Brett Porter has written, and I agree:
 
 1) Maven PMC takes ownership for getting the repository right

IIRC [EMAIL PROTECTED] is actually a President's committee sort-of hanging
off infra@ that's been tasked with figuring all this stuff out. The reason
its not just the Maven PMC in the first place is that there's some other
people that have something to say as well (i.e. precisely the people listed
below). So I don't get why there's an ownership issue to reconsider. The
maven PMC peeps to work on this (Brett, Mark, anyone else who volunteers)
just get on the repository mailing list and JFDI.

 2) Henk, myself (Maven PMC), Mark Diggory (if available), representative
 from interested Apache projects PMC (most likely someone from Ant) get
 together to sort out exactly what we think needs doing (we can use the
 repository list if appropriate)

Yep, sounds like a good idea.

 3) suggest small steps to fix each problem rather than coming up with a
 killer solution that will never get implemented

Sounds like a good idea too. I'm guessing this is why I bailed out of that
mailing list in the first place; we were solving too big a problem at once.

 4) can use the repository wiki for information based on what has already
 been discussed

And again, sounds like a good idea.

 I'd add that to use a common repository, there needs an implementation
 for all projects to use.

The [EMAIL PROTECTED] project was not tasked to deal with that. I think this
conflicts with #3.

Maven has support, ant will have support, magic (from the DPML guys) has
support, several ant-based scripts are around that provide support. Any tool
that can HTTP GET can trivially be made to get files from the repository.
For example I think I've done the basics in python, ruby, and bash+wget+grep
every now and then.


Cheers,


- Leo




unsubscribing

2004-03-09 Thread Leo Simons
Hi gang,
I've not been keeping up with activities over here for a while now (busy 
doing other things :-D). I'm unsubscribing. Insofar as there was a 
special president's committee for repository@ (I vaguely seem to recall 
such a thing being set up), can someone please take the steps required 
to remove me from the committee?

--
cheers,
- Leo Simons
---
Weblog  -- http://leosimons.com/
IoC Component Glue  -- http://jicarilla.org/
Articles  Opinions -- http://articles.leosimons.com/
---
We started off trying to set up a small anarchist community, but
 people wouldn't obey the rules.
-- Alan Bennett


Re: Maven Repository @ Apache

2003-11-07 Thread Leo Simons
Joshua Slive wrote:
maven.repo.remote = [preferred]/avalon,http://www.ibiblio.org/maven
   

Sorry, I'm not on [EMAIL PROTECTED] (Do we have any mirror
maintainers on that list?)  But I don't believe this is a particularly
smart thing to do.
hmm. Good point. I've disabled this feature for now. A shame though :D
cheers,
- Leo
PS: note this was not something discussed on [EMAIL PROTECTED] 
just seemed a good
idea at the time :D





Re: Revival

2003-10-23 Thread Leo Simons
As for standards, I like the concensus we arrived at
(and I would be highly against changing that again now
as its just a major pain in the  to move 100s of
files around).
As for code, well, personally, not really.
Maven worksforme :D. But it could be a good idea
nevertheless.
cheers,
- Leo
[EMAIL PROTECTED] wrote:
Is anyone interested in reviving this project?



[PROPOSAL] follow apache mirror layout convention

2003-05-07 Thread Leo Simons
Hi gang,
I propose we start following the apache mirror layout convention as 
designed by the infrastructure team, including the amendment voted upon 
by the [EMAIL PROTECTED] I volunteer to do so (aw!). Details below.

- Leo
PS: ccing [EMAIL PROTECTED] so the lurkers on there know some actual 
actions are imminent ;)

Summary
---
Avalon should start following the distribution layout as it has been 
decided by the infrastructure team. That means these mappings:

from:/www/www.apache.org/dist/avalon/${subproject}/v${v}/${artifact}-${v}-bin.${type}
to:/www/www.apache.org/dist/avalon/${subproject}/binaries/${artifact}-${v}-bin.${type}
from:/www/www.apache.org/dist/avalon/${subproject}/v${v}/${artifact}-${v}-src.${type}
to:/www/www.apache.org/dist/avalon/${subproject}/source/${artifact}-${v}-src.${type}
from:/www/www.apache.org/dist/avalon/${subproject}/latest/${artifact}-${v}-src.${type}
to:/www/www.apache.org/dist/avalon/${subproject}/${artifact}-current-src.${type}
from:/www/www.apache.org/dist/avalon/${subproject}/latest/${artifact}-${v}-bin.${type}
to:/www/www.apache.org/dist/avalon/${subproject}/${artifact}-current-bin.${type}
In addition, I'd like to flatten excalibur's components structure into 
the main tree.

from:/www/www.apache.org/dist/avalon/excalibur/components/${subsubproject}/${artifact}-${v}-bin.${type}
to:/www/www.apache.org/dist/avalon/excalibur-${subsubproject}/binaries/${artifact}-${v}-bin.${type}
In addition, I would like to move files to the new location, then use 
symlinks to refer back to the old location, so old urls to any 
particular file will keep working.

What are the benefits?
--
- it translates the avalon part of the distribution site to be compliant 
with the mirroring guidelines, including the decisions reached on the 
repository list some time ago
- it works with maven out of the box
- it works with ruper out of the box
- it removes the odd difference between excalibur and the rest of our
  distribution setup
- it makes it easier to guess the url for the location of the most
  current artifact of some project
  (somemirror.com/avalon/framework/avalon-framework-current.tar.gz)
- we follow the same setup as all other projects (at least as all other
  projects should), making locations easier to guess for our users

What are the drawbacks?
---
It is quite a bit of work to move existing files and do the symlinking. 
As I am volunteering, that shouldn't concern y'all :D. You will also 
need to get used to the new setup, and there'll be some disruption as 
various mirrors update.

What else is planned?
-
I want a maven or ant plugin which will allow you to do
cd ${someproject-location}
maven avalon:generate-distribution # build absolutely all artifacts
   # which should be uploaded
# ... check the files built manually ...
maven avalon:publish \ # upload to
   -Davalon.repo.location=avalon.apache.org/~you/candidate
   # avalon.apache.org/~you/candidate
maven avalon:publish   # publish to
   # www.apache.org/dist/avalon/
but a completely consistent layout is the first step we need to take.
Further Comments

http://www.apache.org/dev/mirrors.html
describes a project layout which is different from our own:
Each project (and sub-project) should follow this layout:
---
 |--- source/
 |--- binaries/
  |--- platform/  [optional if produce platform-specific binaries]
 |--- KEYS (containing PGP keys of all Release Managers to date)
 |--- current (symlink to the current source tarball)
 |--- current-source-tarball (symlink to the current source tarball) 
[optional]

the reorg discussions to date have resulted in a sort-of consensus to 
just keep things simple. The idea is to add either

[root]
|--- [base]
 |--- binaries/
  |--- jars/ [this is new]
or
[root]
|--- [base]
 |--- binaries/
 |--- jars/ [this is new]
the last one is potentially compatible with maven: the directory named 
[root] can be seen as a maven repository. We are now kind just waiting 
for some projects to start doing this.

I would like to implement this @ avalon. My plan is to make sure the 
entire existing structure is preserved by using symlinks, but it is 
important we are all on board and aware so future releases go to the 
right place. Please note that while I also don't think the layout 
described above is completely optimal, it is IMHO way more important 
that layouts are consistent than that they are perfect.

In the current setup, we basically have 2 roots:
/www/www.apache.org/dist/avalon
(containing the subprojects framework, phoenix, logkit, and
 the old excalibur 4.0 and 4.1 big archives)
/www/www.apache.org/dist/avalon/excalibur/components
(containing the recent per-component releases in a slightly
 different directory structure)
I would like to have only 

[proposal] repository URI format

2003-03-08 Thread Leo Simons
Hi all,
just read what's in the archive until now. I've summarized (well, not
really summarized, more elongated) the discussions up till now, added
my own thoughts, done some reasearch, and then I came to a conclusion. I
suggest y'all rip this apart, put it together again, (it's in
wiki-compatible format :D) and then someone tallies a vote on whatever
list is appropriate.
cheers,
- Leo
= THE URI FORMAT FOR A SOFTWARE ARTIFACT REPOSITORY =
= Conclusion =
I'll provide my conclusion first, as this is rather a lot of text :D
When the following is known, the URI for any software distribution
architecture is uniquely specified:
* FQDN - fully qualified domain name of the repository as
   defined in the URL spec
* protocol - scheme as defined in the URI spec
* base - base directory on the machine identified by FQDN
   (probably relative to documentroot), preferably
   consisting of lowercase letters, dashes and slashes
* organisation - the inverse of the domain name of the organisation
   that produces the artifact
* project  - the division/group within the organisation that
   produces the artifact, preferably consisting of
   lowercase letters, dashes and slashes, with a website
   at http://project.organisation/
* name - the name of the artifact (unique within the
   project), preferably consisting of lowercase
   letters and dashes
* type - the filetype of the artifact, consisting of whatever
   part of the artifact filename normally identifies the
   filetype
* version  - the version of the artifact, consisting of any set of
   characters allowed in an URI, augmented with any
   information about software or hardware platform
   requirements if not normally part of the version,
   preferably consiting of numbers, letters, dashes and
   points
and for various reasons detailed below I think the URI should be
composed based on the above as follows:
protocol://FQDN/baseorganisation/project/name/types/artifact
= Goal of the Discussion =
The goal of this part of the discussion is to define additional
constraints/ guidelines above and beyond the URI specification to make
it possible to uniquely and unambiguously define the location of a
software distribution artifact, when the following are known:
* the /FQDN/ of the repository (ie repo.apache.org)
* the /protocol/ used to access the repository (ie http)
* the /base/ directory of the repository (ie /dist/repository or /)
* the /organisation/ that produces the artifact
* the /project/ within the organisation that produces the artifact
* the /name/ of the artifact
* the distribution /type/ of the artifact
* the /version/ of the artifact
= Requirements =
* The URI should be stable
* The URI should be easy to generate by humans and machines when
  the above listed items are known
* The URI should be unique based on the uniqueness of the above
  listed items, ie:
if ! otherURI.FQDN == thisURI.FQDN
   return false
elseif ! otherURI.protocol == thisURI.protocol
   return false
elseif ! otherURI.basedir == thisURI.basedir
   return false
elseif ! otherURI.organisation == thisURI.organisation
   return false
elseif ! otherURI.project == thisURI.project
   return false
elseif ! otherURI.name == thisURI.name
   return false
elseif ! otherURI.version == thisURI.version
   return false
else
   return true
* the part of the URI not containing FQDN, protocol and basedir should
  be common across repositories, ie it is desirable that an artifact
  identified by
** the organisation that produces the artifact
** the project within the organisation that produces the artifact
** the name of the artifact
** the version of the artifact
  can be found on any repository by substituting the repository FQDN,
  protocol and basedir from the current URI
= Proposals =
== Base Identifaction conventions ==
base will often be , but in the case of mirrors mirroring many
repositories (ie ibiblio), that might be impractical, in which case
I suggest the base is whatever maps to a directory on the filesystem
the repository is using (ie whatever ext2/3, fat32, whatever accepts
as a directory identifier).
== Organisation Identification conventions ==
It has been suggested that the identification of the organisation is
done by reverse domain names, ie org.apache, org.sun and com.ibm.
It has also been suggested that the organisation is not identified
seperately (ie as is current practice on http://www.ibiblio.org/maven/).
== Project Identification conventions ==
It has been suggested that the identification of a project is done by
lowercase letters seperated by dashes, ie jakarta-commons.
I have seen no suggestions as to how the apache project sturcture should
map into the project names in the