Trunk patch for a new target stage-maven-artifacts in lucene/common_build.xml, which:
- calls a Perl script in dev-tools/scripts/ to recurse over the Maven dist directory (specified via property maven.dist.dir, which has default values under lucene/ and solr/) to find Maven artifacts, and then write an Ant build file (by default ./build/stage_maven_build.xml); and
- invokes the stage-maven target in the Ant build file produced by the Perl script to stage each artifact, along with its POM, sources and javadoc jars, and signatures for each, to the staging repository specified in properties m2.repository.id and m2.repository.url.
Also included in the patch: a shell script to crawl Maven release distribution artifacts using wget: dev-tools/scripts/crawl.maven.release.dist.sh
I have successfully run this target on the Lucene artifacts in Robert's RC0 release candidate, and then "closed" the resulting staging repository ("closing" disallows further uploads to the staging repository, and also does some quality checks, e.g. valid POMs, valid signatures) using this cmdline:
ant clean stage-maven-artifacts -Dmaven.dist.dir=~/temp/lucene -Dm2.repository.id=apache.releases.https -Dm2.repository.url=https://repository.apache.org/service/local/staging/deploy/maven2
The process took a little less than ten minutes.
Although this patch is against trunk, it will work on any version's release, so I think it won't be necessary to commit it to branch_3x.
Left to do: test against the RC0 Solr artifacts.