openjpa-dev mailing list archives

I'd like to propose something like this (edited the wiki page)
The main difference is that upon starting the release process, we
create a branch in which to resolve the release issues while
maintaining the trunk for further development.
h2. Tasks that need to be performed for each release
{info}In the examples below, it is assumed that the current committed
version of OpenJPA is *0.9.6-incubating-SNAPSHOT*, and the version of
the official release will be *0.9.6-incubating*{info}
# Make sure the [#One time setup] steps have been performed
# Create a branch from the trunk (or from a previous branch if
maintaining a branch)
{code:none}
svn copy -m "Create branch for OpenJPA Release 0.9.6-incubating"
https://svn.apache.org/repos/asf/incubator/openjpa/trunk
https://svn.apache.org/repos/asf/incubator/openjpa/releases/0.9.6-
incubating
{code}
# Change to the trunk for the next steps
# Update the pom.xml files to the subsequent version with the -
SNAPSHOT suffix:
{code:none}
perl -pi -e "s;<version>0.9.6-incubating</version>;<version>0.9.7-
incubating-SNAPSHOT</version>;g" pom.xml */pom.xml
{code}
# Commit the POM changes in the trunk
{code:none}
svn commit -m "Updated to version 0.9.7-incubating-SNAPSHOT"
{code}
# Change to the branch for the new release for the following steps
# Update the POMs to remove "-SNAPSHOT" from the version. If you have
perl installed, you can easily do it with a single command:
{code:none}
perl -pi -e 's;<version>0.9.6-incubating-SNAPSHOT</
version>;<version>0.9.6-incubating</version>;g' pom.xml */pom.xml
{code}
# Commit the POM changes
{code:none}
svn commit -m "Updated to version 0.9.6-incubating"
{code}
# Perform the build with documentation and install it in the local
repository (this step is required because there is a bug in Maven's
javadoc generation aggregated between multiple modules):
{code:none}
mvn clean install -Pdocbook-profile,sign-release
{code}
{note}This operation will also sign the release artifacts with the
*gpg* utility using the <username>@apache.org key. If your code
signing key is under a different address, specify it by appending the
following argument to the command above: -
Dopenjpa.release.keyAlias=mysigningalias@somedomain.org{note}
# Verify the signatures:
{code:none}
gpg --multifile --verify openjpa-project/target/assembly/*.asc
{code}
# Build the javadocs and perform the deploy upload:
{code:none}
mvn verify deploy -Pjavadoc-profile,sign-release
{code}
# Start a vote for the release on the [mailto:open-jpa-
dev@incubator.apache.org] mailing list. For an example of the mail,
see [this archived vote|http://mail-archives.apache.org/mod_mbox/
incubator-open-jpa-dev/200611.mbox/%3c07C7A237-DE80-4BC5-
B33D-2B8CDFEF21B7@apache.org%3e]
# If the vote is successful after 3 days, mail
[mailto:general@incubator.apache.org] starting a vote for
authorization to release
# Once that vote is successful, update the [http://cwiki.apache.org/
openjpa/downloads.html] page with information about the download
# Tag the view with the release number:
{code:none}
svn copy -m "OpenJPA Release 0.9.6-incubating"
https://svn.apache.org/repos/asf/incubator/openjpa/releases/0.9.6-
incubating
https://svn.apache.org/repos/asf/incubator/openjpa/tags/0.9.6-
incubating
{code}
# The branch can now be used to apply patches for future releases
using the branch as a basis (e.g. to create 0.9.6.1-incubating).
Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!