For the record, this is (roughly) what I did: it's the same as most
maven-based projects except it creates a dist/ area and works with our
layout.
==== Release Process Notes
** You must use maven3.
(JenaZip does not get a source-release reliably otherwise)
Modules: JenaTop, IRI, jena, ARQ, JenaZip
1/
Create a clean area and checkout copied of the trunks.
Either create a new repo (and use mvn -s settings2.xml)
or delete the tree from org/apache/jena in your local repo.
2/ Update versions to whatever the versions will be.
2a/ Edit the <version> in the POM to be x.y.z-incubating-SNAPSHOT
2b/ The version of the Jena parent POM for modules is the proposed
released version of JenaTop (no SNAPSHOT)
3/ Get the <properties> right in each of the POM files.
The versions of each module are now in the module file.
This creates a frozen record at release time of dependencies.
4/ Check in all POMs.
5/ JenaTop:
mvn release:clean release:prepare -DdryRun=true
svn tags should be VERSION-RC-num
and will be "svn mv"'ed if the vote passes
The other two defaults are OK.
** check release.properties
mvn release:clean release:prepare
mvn release:perform
6/ repeat for IRI, jena, ARQ, JenaZip in that order.
JenaZip generates a lot of warnings.
Ignores ones about long tar file names and
"""
Cannot include project artifact: org.apache.jena:apache-jena:pom:...; it
doesn't have an associated file or directory.
"""
7/ When all modules are done, go and close the staging repo - record the
URL.
To create the dist/ area:
8/ Use the dist.sh script to create the proposed dist area
But this needs the checksums (md5 and sha1 files).
-DcreateChecksum=true did not work.
So fetch the staging repo with: (is there a better way?
-DcreateChecksum=true does not work)
wget -e robots=off --wait 1 --mirror -np \
https://repository.apache.org/content/repositories/orgapachejena-NNN/org/apache/jena
The word "silly" comes to mind.
Check dist.sh settings.
Run
dist.sh > dwim
. ./dwim
9/ Go and clean up your local repo.
Later:
10/ Go and clean up the snapshot repo
11/ Reset versions known by POMs to be the new version SNAPSHOT
dependencies.