Copyright 2004 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. JetSpeed RELEASE-TODO Last Modified: $Date$ Latest version at: http://cvs.apache.org/viewcvs/jakarta-jetspeed/RELEASE-TODO Author: burton@apache.org, paulsp@apache.org, sgala@apache.org, morciuch@apache.org ************************************************************************************ These are steps to be used when building a Jetspeed release distribution: 1) Update the version number in the following files: - project.xml, fusion/project.xml - webapp/WEB-INF/conf/JetspeedResources.properties - tutorial/project.properties - plugin-resources/default/template-resources/src/project.properties (There may be other files, so do a search on the previous version # and "-dev") 2) Update the distribution URL in the following files: - docs/channels/jetspeed.rss - webapp/rss/Jetspeed.rss 3) Update the release notes in README file 4) Update xdocs/install.xml to reference the latest download area 5) clean your distribution (remove Jetspeed.jar from you classpath). This will ensure a clean build 6) build the torque-om for all supported databases ******************************************************************************* ** Use JDK 1.3 or greater when compiling (do not use Jikes for distribution) ** ******************************************************************************* 7) Do a cvs checkout of jakarta-jetspeed module with a -P (Prune) to a clean directory: cvs checkout -P jakarta-jetspeed 8) Running unit tests is no longer necessary since its handled in step 9 (skip) 9) Build releases: maven clean dist If you are debugging the build, and need to build quicker, without tests you can skip the tests: maven -Dmaven.test.skip=true clean dist (recommended that you run the tests at least once before releasing) 10) Copy the distributions to the download directory on minotaur.apache.org: jetspeed-1.xxx-war.zip -> /www/www.apache.org/dist/portals/jetspeed-1/binaries jetspeed-1.xxx-src.zip -> /www/www.apache.org/dist/portals/jetspeed-1/source 11) Download the distributions to a local machine and test the .war file 12) If everything tests out OK, then Tag CVS with the revision release number (for example, JETSPEED-RELEASE-1-5): cvs tag JETSPEED-RELEASE-xxx 13) Sign the distributions on a local machine: a. If you don't have a public key yet, generate it using 'pgp -kg' or 'gpg --gen-key' b. If not already there, append your public key to /www/www.apache.org/dist/jakarta/jetspeed/KEYS (dump your public key using 'pgp -kxa ' or 'gpg --armor --export ', where username is whatever you used in generating the public key, for example 'morciuch') c. Add contents of KEYS to your public ring using 'pgp -ka KEYS' or 'gpg --import KEYS' d. Generate the .asc files using: pgp -sb jetspeed-xxx-war.zip -u pgp -sb jetspeed-xxx-src.zip -u or gpg -sab (resp) e. Generate md5 hashes using: openssl md5 < jetspeed-xxx-war.zip > jetspeed-xxx-war.zip.md5 openssl md5 < jetspeed-xxx-src.zip > jetspeed-xxx-src.zip.md5 f. Upload generated signature files to download directory on minotaur.apache.org: jetspeed-xxx-war.zip.md5 -> /www/www.apache.org/dist/portals/jetspeed-1/binaries jetspeed-xxx-war.zip.asc -> /www/www.apache.org/dist/portals/jetspeed-1/binaries jetspeed-xxx-war.zip -> /www/www.apache.org/dist/portals/jetspeed-1/binaries jetspeed-xxx-src.zip -> /www/www.apache.org/dist/portals/jetspeed-1/source jetspeed-xxx-src.zip.md5 -> /www/www.apache.org/dist/portals/jetspeed-1/source jetspeed-xxx-src.zip.asc -> /www/www.apache.org/dist/portals/jetspeed-1/source 14) Relink current release symbolic links on minotaur.apache.org: cd /www/www.apache.org/dist/portals/jetspeed-1 rm jetspeed-current-* ln -s binaries/jetspeed-xxx-war.zip jetspeed-current.zip ln -s source/jetspeed-xxx-src.zip jetspeed-current-src.zip ln -s binaries/jetspeed-xxx-war.zip.asc jetspeed-current.zip.asc ln -s source/jetspeed-xxx-src.zip.asc jetspeed-current-src.zip.asc 15) Manually update README.html in the distribution directory on minotaur.apache.org. 16) Add the version number and the -dev version number to JIRA via JIRA Admin: (requires administrative privileges on JIRA) 17) Update the Jetspeed home page on minotaur.apache.org: // from your local machine maven site (or xdoc) cd /www/portals.apache.org/jetspeed-1 umask 002 [use maven to deploy the site, or a SFTP utility] // from your local machine cd tutorial maven xdoc cd /www/portals.apache.org/jetspeed-1/tutorial umask 002 [use maven to deploy the site, or a SFTP utility] // from your local machine cd plugin maven xdoc cd /www/portals.apache.org/jetspeed-1/plugin umask 002 [use maven to deploy the site, or a SFTP utility] 18) Update the Jetspeed channels on minotaur.apache.org: umask 002 cd /www/portals.apache.org/jetspeed-1/channels cvs update 19) Update Javadocs on the Jetspeed home page on minotaur.apache.org: a. On minotaur.apache.org: umask 002 cd /www/portals.apache.org/jetspeed-1 rm -r api a. On your local machine: maven javadoc [use maven to deploy the site, or a SFTP utility] (upload docs/api --> /www/portals.apache.org/jetspeed-1) 20) Check out/refresh your copy of 'jakarta-site2' module and do the following: a. Edit the Jakarta news page: /docs/index.html b. Edit the Jakarta source downloads page: /docs/site/sourceindex.html c. Edit the Jakarta binary downloads page: /docs/site/binindex.html d. commit the changes back to CVS e. Update the jakarta home page from CVS: cd /www/jakarta.apache.org/ umask 002 cvs update f. Update the Apache Portals site for News Apache Portals site is temporarily stored under Jetspeed-2 CVS To update the Apache Portals site, checkout Jetspeed-2 Edit archives/ApachePortals/news.xml maven xdocs --or-- maven site [use maven to deploy the site, or a SFTP utility] 21) Write and post release announcement to mailing lists: general@portals.apache.org jetspeed-dev@jakarta.apache.org jetspeed-user@jakarta.apache.org announcements@jakarta.apache.org ***************************** ** Post release activities ** ***************************** 22) Update release number to "-dev". See the similar steps#1 and #2. 23) Update this todo list where appropiate 24) (optional) Build Torque-OM bindings for each and every database (ugh gotta sign them too).... Put them under the binary release in a subdirectory name torque-om Each database should have its own subdirectory db2 hypersonic mysql oracle postgresql mssql sybase axion cloudscape db2400 interbase sapdb 25) Relax :) and smoke a doobie