Jump to: navigation, search


The Jetty project uses Apache Maven to build and release its software artifacts. This terminology is oft confused with the release process of projects within Eclipse so we are endeavoring to bridge these differences. We are still working out the process for releasing Jetty in the Eclipse definition of the word; this will be documented once we are there.

Maven Related Instructions

Update Eclipse Project Plan

Do this in CVS before any release.

Releasing Artifacts

mvn -Dusername=<committer id> -DautoVersionSubmodules=true release:prepare
mvn release:perform

The released artifacts will be staged to oss.sonatype.org where they await promotion when they will be released to the maven central repository. More on this later.

Do a Codehaus release ASAP

Make sure a codehaus release is built and staged before the jetty release is promoted.

Building and Deploying Aggregate Docs

Define the jetty.eclipse.website server entry in your .m2/settings.xml file. You'll need to have access to the dev.eclipse.org machine to perform these actions. If you don't know if you have access to this then you probably don't and will need to ask a project leader for help.

To build and deploy the aggregate javadoc and jxr bits:

cd target/checkout
mvn -Paggregate-site javadoc:aggregate jxr:jxr
mvn -N site:deploy

This will generate the aggregate docs and deploy them to the /home/www/jetty/<project version>/jetty-project directory on download.eclipse.org. The last step is to ssh to that machine and adjust the placement of the apidocs and xref directories to remove the jetty-project folder from the url so that we maintain a clean and consistent api url scheme.

ssh <user>@dev.eclipse.org
cd /home/www/jetty/<VERSION>
mv jetty-project/apidocs .
mv jetty-project/xref .
rmdir jetty-project

End result should be api documents accessible from http://download.eclipse.org/jetty/<project version>/api-docs and http://download.eclipse.org/jetty/<project version>/xref

Deploying distribution files to download.eclipse.org

  • download the files in http://repo2.maven.org/maven2/org/eclipse/jetty/jetty-distribution/VERSION into a directory called 'dist'
  • scp -r dist <user>@dev.eclipse.org:/home/www/jetty/<VERSION>
  • update website links

Updating the stable links

Since we are not allowed to have symbolic links on the download site we have to log into the machine manually and remove the previous stable directory and 'cp -r <verison> stable-7' to get it updated. Maintaining the conventions we use on the site will allow all 'stable' links to be stable and not needed to update to the latest major Jetty build version:

ssh <user>@dev.eclipse.org
cd /home/www/jetty/
rm -fr stable-7
cp -r <version> stable-7

Updating the Eclipse websites downloads page

The Eclipse website is in CVS, viewable from http://dev.eclipse.org/viewcvs/index.cgi/www/jetty/?root=Eclipse_Website. Access details are:

Repository Path 
(committer username)
(committer password)
Connection Type 

Any commits you make will automatically show up live after a few minutes.

Set up in Eclipse

  1. import projects from CVS
  2. create a new repository location
  3. use an existing module (www/jetty)

Then you can simply edit the page, and commit your changes.

Preview locally (optional)

If you want to be able to preview your changes locally, you need to have Apache running, and check out an additional module, eclipse.org-common:

Repository Path 
(leave blank)
Connection Type 
  1. cd /var/www
  2. ln -s /path/to/eclipse.org-common eclipse.org-common
  3. ln -s /path/to/www/jetty jetty

Then you'll be able to see the website on http://localhost/jetty, pre-commits.

Adding a Link to the Index on the Wiki

Update Jetty/Reference/Index of Generated Release Documents; add the newest version to the top of the page. Use the Jetty Release Document template