Sean, have you actually done this with Maven 2? Struts is in a similar situation, we're deploying test builds to maven-snapshot-repository.
Yes but just the deploying to myfaces repo part.[1]
After talking to Brett about how to 'promote' artifacts to the release repo, I don't think copying them will work. The Maven repo contains metadata about what versions are available, and to get those xml files updated, you have to deploy with Maven.
Here's what I did 1.) mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/[project_name]/tags \ -Dusername=[ASF username] \ -Dscm.password=[ASF password] \ -Dtag=[version] This makes sure there are not SNAPSHOT artifacts anywhere except for the module that is being released. It also changes the SNAPSHOT version of the module that is about to be released and checks it into svn. Finally, it tags the release in a location of your choosing. 2.) mvn deploy The following in the master pom ensures that the artifacts are copied *locally* (I run this from the zone machine which also hosts the repo.) <distributionManagement> <repository> <id>myfaces repo</id> <name>MyFaces Maven Repository</name> <url>file:///var/apache2/htdocs/dist/maven-repository</url> </repository> ... snip ... </distributionManagement> NOTE: I *never* do the release:perform. Before we were releasing to the ASF repo directly via the release:perform and the appropriate <distributionManagement> entries. But sometimes the scp would fail or whatever. Also, if there is a last minute fix you can't re-release. mvn deploy seems to work just as well so I used that isntead.
We need a plugin that retrieves an artifact from one repo and deploys it to another. For now I'm planning to use 'mvn deploy:deploy-file' on individual artifacts to correctly add them to the release repo.
The meta data is being written to the myfaces repo but I haven't tried copying everything to the ASF repo. Its true the meta data is probably inconsistent but that could be fixed by adding some of the older versions back to the myfaces repo. Ultimately we need a place to store these for testing/voting. Also one release may depend on another (say tomahawk which depends on shared.) I need to have final dependencies to shared in tomahawk but the artifact isn't on ibiblio yet. I'm definitely up for better ideas and a plugin that allows a "re-deploy" sounds like a pretty good idea.
Wendy
Sean [1] http://myfaces.zones.apache.org/dist/maven-repository/
