Help

Built with Seam

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.

Versioning guidelines

Whilst working through these build document you'll see placeholders for version numbers. Here's a quick guide to what it means:

  • X.Y.Z - the major, minor, and micro level version of this release
  • QN - the qualifier for this release.
  • A.B.C - the major, minor, and micro level version of the next version. Unless you are releasing the final (GA) version, you'll likely keep this the same as X.Y.Z.

Possible qualifiers are

  1. SNAPSHOT - a development snapshot
  2. Beta1 - the first beta
  3. CR2 - the second release candidate
  4. SP3 - the third service patch release
  5. Final - used for final releases

We also may have multiple levels of qualifer

  1. CR2-SNAPSHOT - a development snapshot from a branch created from the CR2 tag
  2. CR2-M1 - the first milestone on the way to the CR2 release
  3. CR2-SP1 - the first patch release for the second release candidate

Publishing builds to Maven

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.

The Maven repository staging environment

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.

Creating a branch

Follow the standard procedure to create a branch in git.

Making a mistake

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.