You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2022/07/06 10:58:23 UTC

[tomcat-native] 07/08: Document the release process

This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 1.2.x
in repository https://gitbox.apache.org/repos/asf/tomcat-native.git

commit 6a4a2e94867ed28332d560000a06911841a8b8f3
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Thu Jun 30 09:24:15 2022 +0100

    Document the release process
---
 HOWTO-RELEASE.txt                 | 87 +++++++++++++++++++++++++++++++++++++++
 TODO.txt                          |  2 -
 xdocs/miscellaneous/changelog.xml |  3 ++
 3 files changed, 90 insertions(+), 2 deletions(-)

diff --git a/HOWTO-RELEASE.txt b/HOWTO-RELEASE.txt
new file mode 100644
index 000000000..b88349c8c
--- /dev/null
+++ b/HOWTO-RELEASE.txt
@@ -0,0 +1,87 @@
+================================================================================
+  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 Tomcat Native release
+=================================
+
+Requirements
+------------
+
+Java 8
+Apache Ant 1.9 or later
+Apache APR 1.4.3 or later source (1.7.0 or later recommended)
+
+
+Preparation
+-----------
+
+Review the open issues in Bugzilla.
+Review open PRs in GitHub.
+
+If you haven't already, add your public PGP key to KEYS.
+
+Ensure dates and/or version numbers are up to date:
+- build.properties.default
+- native/build/rpm/tcnative.spec.in
+- native/include/tcn_version.h
+- native/os/win32/libtcnative.rc
+- xdocs/miscellaneous/changelog.xml
+
+Run the release script to check the Java code is aligned with the current 9.0.x
+source.
+./jnirelease.sh --ver=1.2.x --with-apr=/path/to/apr/source
+
+Switch back to the main branch
+git checkout main
+
+Tagging
+-------
+
+# Check clone is up to date and clean
+git pull
+git status
+
+# Edit files to remove / disable dev build flags
+# - build.properties.default
+# - tcn_version.h
+
+# Confirm the previous edits
+git diff
+
+# Tag (modify version as appropriate)
+git commit -a -m "Tag 1.2.35"
+git tag 1.2.35
+git push origin 1.2.35
+
+# Reset main
+git reset --hard HEAD~1
+
+
+Create the source release
+-------------------------
+
+# Modify version as appropriate
+./jnirelease.sh --ver=1.2.35 --with-apr=/path/to/apr/source
+
+# Switch back to the main branch
+git checkout main
+
+
+Create the binary release for Windows
+-------------------------------------
+
+See native/building
diff --git a/TODO.txt b/TODO.txt
index a16c0521e..ea9c62915 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -50,8 +50,6 @@ I think they have no other home.
 Releasing
 ---------
 
-- Document how to release.
-
 - ZIP download seems to have group write permissions set
   (at least after I extract it on Solaris).
   It's a bit strange that permissions differ between the
diff --git a/xdocs/miscellaneous/changelog.xml b/xdocs/miscellaneous/changelog.xml
index 7a46cc2da..d704adda5 100644
--- a/xdocs/miscellaneous/changelog.xml
+++ b/xdocs/miscellaneous/changelog.xml
@@ -35,6 +35,9 @@
     <docs>
       Document the TLS rengotiation behaviour. (markt)
     </docs>
+    <docs>
+      Add HOWTO-RELEASE.txt that describes the release process. (markt)
+    </docs>
   </changelog>
 </section>
 <section name="Changes in 1.2.34">


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org