  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You 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.

		How to do a mod_jk 1.2 release

Check out a clean copy of tomcat/connectors from subversion to
make sure you don't have any lingering configure or build files.
This will make sure that the source distribution created is clean.

We assume, that you check out to a directory tomcat-connectors.

If you haven't already, add your public PGP key to
tomcat-connectors/KEYS.

Update version numbers as needed
--------------------------------

Do a find for all the docs which include the previous version string
and replace it with the new version.  These are the docs I found which
had to be updated:

xdocs/index.xml
xdocs/news/<THISYEAR0101>.xml
native/STATUS.txt

Update the JK_VERISRELEASE define in jk/native/common/jk_version.h, here is
a svn diff that shows what I changed:

Index: native/common/jk_version.h
===================================================================
--- native/common/jk_version.h  (revision 417260)
+++ native/common/jk_version.h  (working copy)
@@ -32,7 +32,7 @@
 #define JK_VERBETA      0
 #define JK_BETASTRING   "0"
 /* set JK_VERISRELEASE to 1 when release (do not forget to commit!) */
-#define JK_VERISRELEASE 0
+#define JK_VERISRELEASE 1
 #define JK_VERRC        0
 #define JK_RCSTRING     "0"

After updating revision numbers, commit your changes to subversion.

Tag and branch tomcat-connectors in subversion
----------------------------------------------

Use the pattern below for branching and tagging the tomcat-connectors directory.

TAG=JK_{MAJOR_REVISION}_{MINOR_REVISION}_{RELEASE}

svn copy \
   https://svn.apache.org/repos/asf/tomcat/connectors/trunk/ \
   https://svn.apache.org/repos/asf/tomcat/connectors/tags/jk1.2.x/TAG/

Here is an example for mod_jk 1.2.16

svn copy \
   https://svn.apache.org/repos/asf/tomcat/connectors/trunk/ \
   https://svn.apache.org/repos/asf/tomcat/connectors/tags/jk1.2.x/JK_1_2_16/

Build the mod_jk 1.2 documentation
----------------------------------

cd tomcat-connectors/jk/xdocs
ant


Check the documentation carefully (produced in tomcat-connectors/jk/build/docs)
and copy it to people.apache.org:/x1/www/tomcat.apache.org/connectors-doc

Create the new source distribution
----------------------------------

A tool named jkrelease.sh in tomcat-connectors/jk/tools creates
a release tarball and a zip including signature files.

Upload source distribution and documentation to www.apache.org
-------------------------------------------------------------------
First update the KEYS on the server if you have added a new pgp key.

scp tomcat-connectors/KEYS to the
/www/www.apache.org/dist/tomcat/tomcat-connectors
directory on the www.apache.org server.

scp tomcat-connectors-jk-1.2.16-src.tar.gz* to 
/www/www.apache.org/dist/tomcat/tomcat-connectors/jk/source
scp tomcat-connectors-jk-1.2.16-src.zip* to   
/www/www.apache.org/dist/tomcat/tomcat-connectors/jk/source

ssh to www.apache.org and cd to the
/www/www.apache.org/dist/tomcat/tomcat-connectors/jk directory.

Remove the symlinks for current and replace them with a soft link
to the new source distribution files.

ln -s source/tomcat-connectors-jk-1.2.16-src.tar.gz tomcat-connectors-jk-src-current.tar.gz
ln -s source/tomcat-connectors-jk-1.2.16-src.tar.gz.asc tomcat-connectors-jk-src-current.tar.gz.asc
ln -s source/tomcat-connectors-jk-1.2.16-src.tar.zip tomcat-connectors-jk-src-current.zip
ln -s source/tomcat-connectors-jk-1.2.16-src.zip.asc tomcat-connectors-jk-src-current.zip.asc

Make sure the group write bit is set on all files and directories
in the jk directory.

chmod -R g+w /www/www.apache.org/dist/tomcat/tomcat-connectors/jk/

Build binaries and upload distributions to www.apache.org
--------------------------------------------------------------

Build mod_jk for a specific web server and OS.  Package it as appropriate for
the OS and sign the archive using PGP. Please include the ASF License, the
generated docs, and the tools.  Please name the distribuiton as follows:

tomcat-connectors-jk-{version}-{os-version-cpu}-{web server-version}.(tar.gz|zip)

scp the binary distribution and pgp signature file to the appropriate binaries/{os} directory.

Make sure the group write bit is on for all files you upload.

Update source for next version
------------------------------

native/STATUS.txt: Add status "in development" for new version.
native/configure.in: Update variable VERSION.
native/common/jk_version.h: Update variables JK_VERMAJOR, JK_VERMINOR, JK_VERFIX,
                            JK_VERSTRING, and JK_VERISRELEASE.
native/common/portable.h.sample: Update VERSION define.
native/iis/isapi_redirect.rc: Update JK_VERSION_STR, FILEVERSION, and PRODUCTVERSION
native/iis/installer/isapi-redirector-win32-msi.ism: Update ProductVersion.
xdocs/miscellaneous/changelog.xml: Start a new section for the new version.

Remove old release distributions from www.apache.org
----------------------------------------------------

Verify that the old versions of the source and binary distributions are
available at /www/archive.apache.org/dist/tomcat/tomcat-connector/jk .
Copy old source distributions and binaries as needed, then remove the
old source and binary distributions.

Arrange the downloads_tomcat-connectors.cgi
-------------------------------------------

Check tomcat-site out:
svn co https://svn.apache.org/repos/asf/tomcat/site site-tomcat


Arrange the file: xdocs/downloads/downloads.xml

Use ant to regenerate the corresponding html file:
docs/site/downloads/downloads_tomcat-connectors.html

Commit it after checking carefully the changes.

Connect to people.apache.org and update the tomcat.apache.org site image,
the site tomcat.apache.org should reflect the change after a while.
cd /x2/www/tomcat.apache.org/site/downloads
svn update downloads_tomcat-connectors.html

Announcements
-------------

The release distribution directories are mirrored so that the
releases can be downloaded from multiple sites.  Please wait
24 hours before sending out the announcement so that the mirrors
get a chance to get the new release distributions.

Send an email announcement to users@tomcat.apache.org,
dev@tomcat.apache.org, and announce@apache.org.

