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.

Reply via email to