You can find the full source code for this website in the Seam package in the directory /examples/wiki. It is licensed under the LGPL.
Whilst working through these build document you'll see placeholders for version numbers. Here's a quick guide to what it means:
GA) version, you'll likely keep this the same as X.Y.Z.
Possible qualifiers are
We also may have multiple levels of qualifer
Before you can perform the release, you need to make sure you have an account on https://repository.jboss.org/nexus - contact the project lead if you need an account. You'll also need to have GnuPG set up on your machine (this guide to key generation will get you started. You will need to register the key at pgp.mit.edu - as described in this guide. Here's the cheat command:
gpg --keyserver pgp.mit.edu --send-key 0xYOURKEYGOESHERE
To tell the build about your GPG key, add this profile to ~/.m2/settings.xml:
<profile> <id>release</id> <activation> <property> <name>release</name> </property> </activation> <properties> <gpg.passphrase>XXXXX</gpg.passphrase> </properties> </profile>
Alternatively, you can set up the gpg agent, and use:
<profile> <id>release</id> <activation> <property> <name>release</name> </property> </activation> <properties> <gpg.useAgent>true</gpg.useAgent> </properties> </profile>
Furthermore, you to use the nexus plugin to control the staging environment, you must add
<pluginGroups> <pluginGroup>org.sonatype.plugins</pluginGroup> </pluginGroups>
to settings.xml.
Then you need to verify the release, and promote the staging repository. Go to https://repository.jboss.org/nexus/ and log in. Then choose the staging panel, find the staging repository, and close it. Then you can visit the staging repo, and verify the artifacts are correct. Having done this, you can hit release, and the artifacts will be promoted immediately to the JBoss repository.
You can also read more about the Nexus staging environment.
Follow the standard procedure to create a branch in git.
If you make a mistake during release, you can easily undo this mistake using mvn release:rollback. This won't remove any created tag, so delete that manually.