You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wookie.apache.org by bu...@apache.org on 2012/04/25 16:58:07 UTC

svn commit: r814408 [2/3] - in /websites/staging/wookie/trunk/content: ./ wookie/docs/developer/release-discuss.txt wookie/docs/developer/release-process.html wookie/docs/developer/release-vote-general.txt wookie/docs/developer/release-vote.txt

Added: websites/staging/wookie/trunk/content/wookie/docs/developer/release-process.html
==============================================================================
--- websites/staging/wookie/trunk/content/wookie/docs/developer/release-process.html (added)
+++ websites/staging/wookie/trunk/content/wookie/docs/developer/release-process.html Wed Apr 25 14:58:06 2012
@@ -0,0 +1,442 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/wookie/css/wookie.css" rel="stylesheet" type="text/css">
+  <link href="/wookie/css/code.css" rel="stylesheet" type="text/css">
+  <title>Apache Wookie (Incubating) - Release Process</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+</head>
+
+<body>
+  <div id="banner">
+    <img alt="Apache Wookie (Incubating)" src="/wookie/images/logo.png"/>
+    <h1 class="title">Release Process</h1>
+  </div>
+  
+  <div id="navigation">
+  <h1 id="general">General</h1>
+<ul>
+<li><a href="/wookie/index.html">Home</a></li>
+<li><a href="/wookie/news.html">News</a></li>
+<li><a href="/wookie/docs/download.html">Download</a></li>
+<li><a href="http://incubator.apache.org/projects/wookie.html">Incubator page</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+</ul>
+<h1 id="documentation">Documentation</h1>
+<ul>
+<li><a href="/wookie/docs/download.html">Download and Quickstart</a></li>
+<li><a href="/wookie/docs/admin.html">Server Admin</a></li>
+<li><a href="/wookie/docs/embedding.html">Embedding</a></li>
+<li><a href="/wookie/docs/shindig.html">Integrating with Shindig</a></li>
+<li><a href="/wookie/docs/widgets.html">Building widgets</a></li>
+<li><a href="/wookie/docs/faq.html">FAQ</a></li>
+<li><a href="/wookie/docs/api.html">API Reference</a></li>
+</ul>
+<h1 id="community">Community</h1>
+<ul>
+<li><a href="/wookie/get-involved.html">Get Involved</a></li>
+<li><a href="/wookie/mailing-lists.html">Mailing Lists</a></li>
+<li><a href="/wookie/people.html">People</a></li>
+</ul>
+<h1 id="development">Development</h1>
+<ul>
+<li><a href="/wookie/docs/source.html">Getting Started</a></li>
+<li><a href="/wookie/docs/developer/running.html">Running</a></li>
+<li><a href="/wookie/docs/templates.html">Widget Templates</a></li>
+<li><a href="/wookie/docs/developer/features.html">Extension Features</a></li>
+<li><a href="/wookie/docs/developer/widgets.html">Deploying Widgets</a></li>
+<li><a href="/wookie/docs/develop.html">Environment</a></li>
+<li><a href="/wookie/docs/developer/issues.html">Issue Tracker</a></li>
+<li><a href="/wookie/docs/developer/index.html">Management</a></li>
+<li><a href="/wookie/docs/developer/parser.html">W3C Widget Parser</a></li>
+</ul>
+<h1 id="asf">ASF</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 id="release-process">Release Process</h1>
+<p>This document is an overview of the release process for Apache Wookie (Incubating).
+Wookie uses a series of ant scripts coupled together with Apache Ivy to allow automatic building of the code into its various release artifacts. 
+It can also be used to automatically sign binaries and deploy artifacts to the Nexus Repository.</p>
+<p>Make sure the <a href="release-configuration.html">Release Setup</a> steps have been performed.</p>
+<h2 id="what-exactly-do-we-build-and-release">What exactly do we build and release?</h2>
+<p>You should familiarize yourself with the ant scripts in the project as they are used to create the artifacts. We will go over the specific tasks for generating them 
+in more detail later.</p>
+<p>Note the following 3 artifacts that are to be generated. Eventually these should be made available to download from <a href="http://www.apache.org/dist/incubator/wookie/">http://www.apache.org/dist/incubator/wookie/</a></p>
+<div class="codehilite"><pre><span class="mi">1</span><span class="o">.</span> <span class="n">A</span> <span class="n">source</span> <span class="n">release</span> <span class="p">(</span><span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-</span><span class="n">VERSION</span><span class="o">-</span><span class="n">src</span><span class="o">.</span><span class="n">zip</span><span class="p">)</span> <span class="p">(</span><span class="ow">and</span> <span class="n">also</span> <span class="n">a</span> <span class="n">tar</span><span class="o">.</span><span class="n">gz</span> <span class="n">version</span><span class="p">)</span>
+    <span class="o">-</span> <span class="n">this</span> <span class="n">is</span> <span class="k">for</span> <span class="n">users</span> <span class="n">who</span> <span class="n">wish</span> <span class="n">to</span> <span class="n">download</span> <span class="n">the</span> <span class="n">code</span> <span class="ow">and</span> <span class="n">build</span> <span class="n">it</span> <span class="n">themselves</span>
+<span class="mi">2</span><span class="o">.</span> <span class="n">A</span> <span class="n">standalone</span> <span class="n">release</span> <span class="p">(</span><span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-</span><span class="n">VERSION</span><span class="o">-</span><span class="n">standalone</span><span class="o">.</span><span class="n">zip</span><span class="p">)</span> <span class="p">(</span><span class="ow">and</span> <span class="n">also</span> <span class="n">a</span> <span class="n">tar</span><span class="o">.</span><span class="n">gz</span> <span class="n">version</span><span class="p">)</span>
+    <span class="o">-</span> <span class="n">this</span> <span class="n">is</span> <span class="n">aimed</span> <span class="n">at</span> <span class="n">first</span> <span class="nb">time</span><span class="o">/</span><span class="n">casual</span> <span class="n">users</span> <span class="ow">and</span> <span class="n">incorparates</span> <span class="n">a</span> <span class="n">preconfigured</span> <span class="n">Jetty</span> <span class="ow">and</span> <span class="n">Derby</span> <span class="n">DB</span> <span class="n">to</span> <span class="n">work</span> <span class="n">out</span> <span class="n">of</span> <span class="n">the</span> <span class="n">box</span>
+<span class="mi">3</span><span class="o">.</span> <span class="n">A</span> <span class="n">WAR</span> <span class="n">release</span> <span class="p">(</span><span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-</span><span class="n">VERSION</span><span class="o">-</span><span class="n">war</span><span class="o">.</span><span class="n">zip</span><span class="p">)</span> <span class="p">(</span><span class="ow">and</span> <span class="n">also</span> <span class="n">a</span> <span class="n">tar</span><span class="o">.</span><span class="n">gz</span> <span class="n">version</span><span class="p">)</span>
+    <span class="o">-</span> <span class="n">this</span> <span class="n">is</span> <span class="n">aimed</span> <span class="n">towards</span> <span class="n">users</span> <span class="n">who</span> <span class="n">have</span> <span class="n">an</span> <span class="n">existing</span> <span class="n">server</span> <span class="n">setup</span> <span class="p">(</span><span class="n">their</span> <span class="n">own</span> <span class="n">tomcat</span><span class="o">/</span><span class="n">mysql</span> <span class="nb">system</span> <span class="k">for</span> <span class="n">example</span><span class="p">)</span> 
+      <span class="ow">and</span> <span class="n">want</span> <span class="n">to</span> <span class="n">deploy</span> <span class="n">it</span> <span class="n">alongside</span> <span class="n">their</span> <span class="n">own</span> <span class="n">existing</span> <span class="n">web</span> <span class="n">applications</span><span class="o">.</span>  <span class="n">The</span> <span class="n">bundled</span> <span class="n">documentation</span> <span class="n">is</span> <span class="n">geared</span> <span class="n">towards</span> 
+      <span class="n">configuring</span> <span class="n">it</span> <span class="k">for</span> <span class="n">tomcat</span><span class="o">/</span><span class="n">mysql</span> <span class="n">but</span> <span class="n">it</span> <span class="n">also</span> <span class="n">includes</span> <span class="n">scripts</span> <span class="k">for</span> <span class="n">other</span> <span class="n">databases</span><span class="o">.</span>
+
+<span class="n">Additionally</span> <span class="n">there</span> <span class="n">are</span> <span class="mi">3</span> <span class="n">Nexus</span> <span class="n">artifacts</span> <span class="n">to</span> <span class="n">generate</span><span class="o">.</span> <span class="n">Eventually</span> <span class="n">these</span> <span class="n">should</span> <span class="n">be</span> <span class="n">made</span> <span class="n">available</span> <span class="n">from</span> <span class="n">the</span> <span class="n">Nexus</span> <span class="n">Repository</span><span class="o">.</span>
+
+<span class="mi">4</span><span class="o">.</span> <span class="n">A</span> <span class="n">Nexus</span> <span class="n">artifact</span> <span class="n">of</span> <span class="n">the</span> <span class="n">wookie</span> <span class="n">connector</span> <span class="n">subproject</span> <span class="p">(</span><span class="n">wookie</span><span class="o">-</span><span class="n">java</span><span class="o">-</span><span class="n">connector</span><span class="o">-</span><span class="n">VERSION</span><span class="o">.</span><span class="n">jar</span><span class="p">)</span>
+    <span class="o">-</span> <span class="n">this</span> <span class="n">is</span> <span class="k">for</span> <span class="n">users</span> <span class="n">who</span> <span class="n">want</span> <span class="n">to</span> <span class="n">incorporate</span> <span class="n">the</span> <span class="n">connector</span> <span class="n">part</span> <span class="n">of</span> <span class="n">wookie</span> <span class="n">only</span> <span class="n">as</span> <span class="n">a</span> <span class="n">jar</span> <span class="n">via</span> <span class="n">maven</span>
+<span class="mi">5</span><span class="o">.</span> <span class="n">A</span> <span class="n">Nexus</span> <span class="n">artifact</span> <span class="n">of</span> <span class="n">the</span> <span class="n">wookie</span> <span class="n">parser</span> <span class="n">subproject</span> <span class="p">(</span><span class="n">wookie</span><span class="o">-</span><span class="n">parser</span><span class="o">-</span><span class="n">VERSION</span><span class="o">.</span><span class="n">jar</span><span class="p">)</span>
+    <span class="o">-</span> <span class="n">this</span> <span class="n">is</span> <span class="k">for</span> <span class="n">users</span> <span class="n">who</span> <span class="n">want</span> <span class="n">to</span> <span class="n">incorporate</span> <span class="n">the</span> <span class="n">w3c</span> <span class="n">widget</span> <span class="n">parser</span> <span class="n">part</span> <span class="n">of</span> <span class="n">wookie</span> <span class="n">only</span> <span class="n">as</span> <span class="n">a</span> <span class="n">jar</span> <span class="n">via</span> <span class="n">maven</span>
+<span class="mi">6</span><span class="o">.</span> <span class="n">A</span> <span class="n">Nexus</span> <span class="n">artifact</span> <span class="n">of</span> <span class="n">the</span> <span class="n">wookie</span> <span class="n">WAR</span> <span class="p">(</span><span class="n">wookie</span><span class="o">-</span><span class="n">VERSION</span><span class="o">.</span><span class="n">war</span><span class="p">)</span>
+    <span class="o">-</span> <span class="n">this</span> <span class="n">is</span> <span class="k">for</span> <span class="n">users</span> <span class="n">who</span> <span class="n">want</span> <span class="n">to</span> <span class="n">include</span> <span class="n">a</span> <span class="n">self</span> <span class="n">contained</span> <span class="n">version</span> <span class="n">of</span> <span class="n">the</span> <span class="n">wookie</span><span class="o">.</span><span class="n">war</span> <span class="n">in</span> <span class="n">their</span> <span class="n">own</span> <span class="n">projects</span> <span class="n">via</span> <span class="n">maven</span><span class="o">.</span>
+    <span class="p">(</span><span class="n">the</span> <span class="n">difference</span> <span class="n">between</span> <span class="n">this</span> <span class="ow">and</span> <span class="c1">#3 is that this one is configured &amp; bundled with Derby DB.)</span>
+</pre></div>
+
+
+<h2 id="steps-to-making-a-release">Steps to making a release</h2>
+<h3 id="1-resolve-outstanding-jira-issues-marked-against-this-planned-release">1. Resolve Outstanding JIRA issues marked against this planned release</h3>
+<div class="codehilite"><pre>    <span class="mi">1</span><span class="o">.</span> <span class="n">Analyse</span> <span class="nb">open</span> <span class="n">issues</span>
+    <span class="mi">2</span><span class="o">.</span> <span class="n">Issues</span> <span class="n">should</span> <span class="n">be</span> <span class="n">FIXED</span> <span class="ow">and</span> <span class="n">verified</span> <span class="n">to</span> <span class="n">ensure</span> <span class="n">they</span> <span class="n">are</span> <span class="n">truly</span> <span class="n">fixed</span> <span class="ow">and</span> <span class="n">thus</span> <span class="n">marked</span> <span class="n">as</span> <span class="n">verified</span>
+    <span class="mi">3</span><span class="o">.</span> <span class="n">Alternatively</span><span class="p">,</span> <span class="n">in</span> <span class="n">some</span> <span class="n">cases</span> <span class="nb">open</span> <span class="n">issues</span> <span class="n">can</span> <span class="n">be</span> <span class="n">moved</span> <span class="n">to</span> <span class="n">the</span> <span class="k">next</span> <span class="n">planned</span> <span class="n">release</span>
+    <span class="mi">4</span><span class="o">.</span> <span class="n">No</span> <span class="nb">open</span> <span class="n">issues</span> <span class="n">should</span> <span class="n">remain</span> <span class="n">against</span> <span class="n">this</span> <span class="n">intended</span> <span class="n">release</span> <span class="n">before</span> <span class="n">continuing</span>
+        <span class="o">-</span> <span class="n">The</span> <span class="n">only</span> <span class="n">exception</span> <span class="n">to</span> <span class="n">this</span> <span class="n">is</span> <span class="k">if</span> <span class="n">an</span> <span class="n">issue</span> <span class="n">directly</span> <span class="n">addresses</span> <span class="n">the</span> <span class="n">build</span> <span class="n">process</span><span class="p">,</span> <span class="n">such</span> <span class="n">as</span> <span class="s">&quot;create build for release&quot;</span> <span class="n">type</span> <span class="n">issue</span><span class="o">.</span>
+</pre></div>
+
+
+<h3 id="2-communicate-with-committers-regarding-new-release">2. Communicate with committers regarding new release</h3>
+<div class="codehilite"><pre><span class="n">Send</span> <span class="n">an</span> <span class="n">email</span> <span class="n">to</span> <span class="n">wookie</span><span class="o">-</span><span class="n">dev</span><span class="nv">@incubator</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span> <span class="ow">and</span> <span class="n">start</span> <span class="n">a</span> <span class="n">vote</span> <span class="n">to</span> <span class="n">discuss</span> <span class="n">whether</span> <span class="n">everybody</span> <span class="n">agrees</span> <span class="n">it</span> <span class="n">is</span> <span class="n">okay</span> <span class="n">to</span> <span class="n">go</span> <span class="n">ahead</span> <span class="ow">and</span> <span class="n">make</span> <span class="n">a</span> <span class="n">release</span><span class="o">.</span>
+<span class="n">Ideally</span> <span class="n">we</span><span class="err">&#39;</span><span class="n">d</span> <span class="n">want</span> <span class="n">a</span> <span class="o">+</span><span class="mi">3</span> <span class="n">from</span> <span class="n">the</span> <span class="n">committers</span><span class="p">,</span> <span class="n">but</span> <span class="n">this</span> <span class="n">is</span> <span class="ow">not</span> <span class="n">always</span> <span class="n">possible</span><span class="o">.</span>
+</pre></div>
+
+
+<h3 id="3-check-all-licenses-notices-and-other-related-files">3. Check all Licenses, notices and other related files</h3>
+<div class="codehilite"><pre>    <span class="mi">1</span><span class="o">.</span> <span class="n">Check</span> <span class="n">the</span> <span class="n">following</span> <span class="n">files</span> <span class="n">found</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">the</span> <span class="n">trunk</span><span class="o">.</span> <span class="p">(</span><span class="n">They</span> <span class="n">are</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">all</span> <span class="n">the</span> <span class="n">builds</span><span class="p">,</span> <span class="n">except</span> <span class="n">in</span> <span class="n">the</span> <span class="k">case</span> <span class="n">of</span> <span class="n">LICENSE</span> <span class="ow">and</span> <span class="n">NOTICE</span><span class="p">,</span> <span class="n">which</span> <span class="n">are</span> <span class="n">buil
 d</span> <span class="n">specific</span><span class="p">)</span>
+        <span class="mi">1</span><span class="o">.</span> <span class="n">README</span> <span class="o">-</span> <span class="n">this</span> <span class="n">is</span> <span class="n">usually</span> <span class="n">the</span> <span class="n">first</span> <span class="n">file</span> <span class="n">a</span> <span class="n">user</span> <span class="n">will</span> <span class="nb">read</span> <span class="n">when</span> <span class="n">they</span> <span class="n">download</span> <span class="n">either</span> <span class="n">the</span> <span class="n">source</span> <span class="ow">or</span> <span class="n">binary</span> <span class="n">versions</span> <span class="n">of</span> <span class="n">wookie</span><span class="o">.</span>
+        <span class="n">This</span> <span class="n">file</span> <span class="n">usually</span> <span class="n">will</span> <span class="ow">not</span> <span class="n">need</span> <span class="n">to</span> <span class="n">be</span> <span class="n">updated</span> <span class="n">very</span> <span class="n">often</span><span class="p">,</span> <span class="n">but</span> <span class="n">as</span> <span class="n">it</span> <span class="n">points</span> <span class="n">to</span> <span class="n">other</span> <span class="n">files</span> <span class="ow">and</span> <span class="n">explains</span> <span class="n">some</span> <span class="n">of</span> <span class="n">the</span> <span class="n">different</span> <span class="n">builds</span><span class="p">,</span> <span class="n">it</span> <span class="n">should</span> <span class="n">be</span> <span class="n">checked</span> <span class="k">for</span> <span class="n">accuracy</span><span class="o">.</span>
+        <span class="mi">2</span><span class="o">.</span> <span class="n">RELEASE_NOTES</span> <span class="o">-</span> <span class="n">this</span> <span class="n">must</span> <span class="n">be</span> <span class="n">updated</span> <span class="n">with</span> <span class="n">the</span> <span class="n">list</span> <span class="n">of</span> <span class="n">issues</span> <span class="n">addressed</span> <span class="n">since</span> <span class="n">the</span> <span class="k">last</span> <span class="n">release</span><span class="o">.</span>  
+        <span class="n">This</span> <span class="n">can</span> <span class="n">be</span> <span class="n">obtained</span> <span class="n">from</span> <span class="n">the</span> <span class="n">wookie</span> <span class="n">JIRA</span> <span class="n">by</span> <span class="n">selecting</span> <span class="n">all</span> <span class="n">issues</span> <span class="n">addressed</span> <span class="k">for</span> <span class="n">this</span> <span class="n">planned</span> <span class="n">version</span><span class="o">.</span>
+        <span class="mi">3</span><span class="o">.</span> <span class="n">UPGRADING</span> <span class="o">-</span> <span class="n">this</span> <span class="n">must</span> <span class="n">be</span> <span class="n">updated</span> <span class="k">if</span> <span class="n">there</span> <span class="n">were</span> <span class="n">any</span> <span class="n">significant</span> <span class="n">changes</span> <span class="n">made</span> <span class="n">to</span> <span class="n">wookie</span> <span class="n">since</span> <span class="n">the</span> <span class="k">last</span> <span class="n">release</span><span class="o">.</span>
+        <span class="n">Examples</span> <span class="n">of</span> <span class="n">this</span> <span class="n">are</span> <span class="o">-</span> <span class="n">changes</span> <span class="n">to</span> <span class="n">the</span> <span class="n">database</span> <span class="n">which</span> <span class="n">means</span> <span class="n">that</span> <span class="n">users</span> <span class="n">may</span> <span class="n">have</span> <span class="n">to</span> <span class="n">manually</span> <span class="n">migrate</span> <span class="n">data</span> <span class="n">using</span> <span class="n">scripts</span>
+        <span class="ow">or</span> <span class="n">where</span> <span class="n">a</span> <span class="n">major</span> <span class="n">overhaul</span> <span class="n">of</span> <span class="n">the</span> <span class="n">user</span> <span class="n">interface</span> <span class="n">OR</span> <span class="n">API</span> <span class="n">means</span> <span class="n">users</span> <span class="n">would</span> <span class="n">have</span> <span class="n">to</span> <span class="n">change</span><span class="o">/</span><span class="n">update</span> <span class="n">their</span> <span class="n">current</span> <span class="n">practices</span> <span class="k">for</span> <span class="n">using</span> <span class="n">those</span> <span class="n">parts</span> <span class="n">of</span> <span class="n">wookie</span>
+        <span class="mi">4</span><span class="o">.</span> <span class="n">NOTICE</span> <span class="o">-</span> <span class="n">this</span> <span class="n">should</span> <span class="n">be</span> <span class="n">checked</span> <span class="n">to</span> <span class="n">make</span> <span class="n">sure</span> <span class="n">any</span> <span class="k">new</span> <span class="n">components</span> <span class="n">added</span> <span class="n">to</span> <span class="n">wookie</span> <span class="n">since</span> <span class="n">the</span> <span class="k">last</span> <span class="n">release</span> <span class="n">are</span> <span class="n">mentioned</span><span class="o">.</span>  <span class="n">Note:</span> <span class="n">the</span> <span class="n">actual</span> <span class="n">licences</span> <span class="k">for</span> <span class="n">these</span> <span class="n">go</span> <span class="n">into</span> <span class="n">the</span> <span class="n">LICENSE</span> <span class="n">file
 </span><span class="o">.</span>
+        <span class="mi">5</span><span class="o">.</span> <span class="n">NEW_AND_NOTEWORTHY</span> <span class="o">-</span> <span class="n">this</span> <span class="n">should</span> <span class="n">be</span> <span class="n">checked</span> <span class="ow">and</span> <span class="n">updated</span> <span class="n">to</span> <span class="n">point</span> <span class="n">out</span> <span class="ow">and</span> <span class="n">mention</span> <span class="n">any</span> <span class="k">new</span> <span class="n">features</span> <span class="n">in</span> <span class="n">wookie</span> <span class="n">since</span> <span class="n">the</span> <span class="k">last</span> <span class="n">release</span><span class="p">,</span> <span class="n">that</span> <span class="n">are</span> <span class="n">deemed</span> <span class="n">significant</span><span class="o">.</span>
+        <span class="mi">6</span><span class="o">.</span> <span class="n">BUILDING</span> <span class="o">-</span> <span class="n">this</span> <span class="n">describes</span> <span class="n">how</span> <span class="n">to</span> <span class="n">build</span> <span class="n">wookie</span> <span class="n">from</span> <span class="n">the</span> <span class="n">source</span><span class="o">.</span>  <span class="n">This</span> <span class="n">should</span> <span class="n">be</span> <span class="n">checked</span> <span class="k">for</span> <span class="n">accuracy</span><span class="p">,</span> <span class="n">but</span> <span class="n">will</span> <span class="n">probably</span> <span class="ow">not</span> <span class="n">change</span> <span class="n">very</span> <span class="n">often</span><span class="o">.</span>
+        <span class="mi">7</span><span class="o">.</span> <span class="n">LICENSE</span> <span class="o">-</span> <span class="n">this</span> <span class="n">file</span> <span class="n">contains</span> <span class="n">references</span> <span class="n">to</span> <span class="n">all</span> <span class="n">the</span> <span class="n">licenses</span> <span class="n">of</span> <span class="n">the</span> <span class="n">third</span> <span class="n">party</span> <span class="ow">and</span> <span class="n">contributed</span> <span class="n">libaries</span> <span class="ow">and</span> <span class="n">code</span> <span class="n">used</span> <span class="n">in</span> <span class="n">wookie</span><span class="o">.</span>  
+        <span class="n">Any</span> <span class="k">new</span> <span class="n">libraries</span> <span class="ow">and</span> <span class="n">code</span> <span class="n">added</span> <span class="n">since</span> <span class="n">the</span> <span class="k">last</span> <span class="n">release</span> <span class="n">must</span> <span class="n">have</span> <span class="n">their</span> <span class="n">licences</span> <span class="n">added</span> <span class="n">here</span><span class="o">.</span>  <span class="n">The</span> <span class="n">main</span> <span class="n">exception</span> <span class="n">here</span> <span class="n">is</span> <span class="n">an</span> <span class="n">existing</span> <span class="n">Apache</span> <span class="n">Software</span> <span class="n">Foundation</span> <span class="n">library</span><span class="p">,</span> <span class="n">which</span> <span class="n">does</span> <span class="ow">not</span> <span class="n">need</span> <span class="n">to</span> <span
  class="n">be</span> <span class="n">included</span><span class="o">.</span>
+
+    <span class="mi">2</span><span class="o">.</span> <span class="n">Check</span> <span class="n">the</span> <span class="n">licences</span> <span class="ow">and</span> <span class="n">notices</span> <span class="n">found</span> <span class="n">under</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/</span> <span class="p">(</span><span class="n">Note:</span> <span class="n">some</span> <span class="n">of</span> <span class="n">the</span> <span class="n">builds</span> <span class="n">have</span> <span class="n">specific</span> <span class="n">LICENCE</span> <span class="ow">and</span> <span class="n">NOTICE</span> <span class="n">files</span><span class="p">)</span>
+        <span class="mi">1</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/m</span><span class="n">aven</span><span class="sr">/subprojects/</span><span class="n">LICENCE</span><span class="o">.</span>  <span class="n">This</span> <span class="n">licence</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">all</span> <span class="n">the</span> <span class="n">maven</span> <span class="n">artifacts</span>
+        <span class="p">(</span><span class="n">except</span> <span class="n">the</span> <span class="n">maven</span> <span class="n">WAR</span> <span class="n">artifact</span><span class="p">)</span> <span class="ow">and</span> <span class="n">should</span> <span class="n">only</span> <span class="n">contain</span> <span class="n">the</span> <span class="n">apache</span> <span class="n">license</span><span class="o">.</span> <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">in</span> <span class="n">in</span> <span class="n">the</span> <span class="o">/</span><span class="n">META</span><span class="o">-</span><span class="n">INF</span> <span class="n">folder</span> <span class="n">of</span> <span class="n">a</span> <span class="n">generated</span> <span class="o">.</span><span class="n">jar</span> <span class="n">file</span><span class="p">)</span>
+        <span class="mi">2</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/m</span><span class="n">aven</span><span class="sr">/subprojects/</span><span class="n">NOTICE</span><span class="o">.</span>  <span class="n">This</span> <span class="n">notice</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">all</span> <span class="n">the</span> <span class="n">maven</span> <span class="n">artifacts</span>
+        <span class="p">(</span><span class="n">except</span> <span class="n">the</span> <span class="n">maven</span> <span class="n">WAR</span> <span class="n">artifact</span><span class="p">)</span> <span class="ow">and</span> <span class="n">should</span> <span class="n">only</span> <span class="n">contain</span> <span class="n">the</span> <span class="n">apache</span> <span class="n">license</span> <span class="n">references</span><span class="o">.</span> <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">in</span> <span class="n">in</span> <span class="n">the</span> <span class="o">/</span><span class="n">META</span><span class="o">-</span><span class="n">INF</span> <span class="n">folder</span> <span class="n">of</span> <span class="n">a</span> <span class="n">generated</span> <span class="o">.</span><span class="n">jar</span> <span class="n">file</span><span class="p">)</span>
+        <span class="mi">3</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/m</span><span class="n">aven</span><span class="sr">/war/</span><span class="n">LICENSE</span><span class="o">.</span> <span class="n">This</span> <span class="n">license</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">the</span> <span class="n">maven</span> <span class="n">WAR</span> <span class="n">artifact</span> <span class="n">only</span><span class="o">.</span> 
+        <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">in</span> <span class="n">in</span> <span class="n">the</span> <span class="o">/</span><span class="n">META</span><span class="o">-</span><span class="n">INF</span> <span class="n">folder</span> <span class="n">of</span> <span class="n">a</span> <span class="n">generated</span> <span class="o">.</span><span class="n">war</span> <span class="n">file</span><span class="p">)</span><span class="o">.</span>
+        <span class="mi">4</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/m</span><span class="n">aven</span><span class="sr">/war/</span><span class="n">NOTICE</span><span class="o">.</span> <span class="n">This</span> <span class="n">notice</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">the</span> <span class="n">maven</span> <span class="n">WAR</span> <span class="n">artifact</span> <span class="n">only</span><span class="o">.</span> 
+        <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">in</span> <span class="n">in</span> <span class="n">the</span> <span class="o">/</span><span class="n">META</span><span class="o">-</span><span class="n">INF</span> <span class="n">folder</span> <span class="n">of</span> <span class="n">a</span> <span class="n">generated</span> <span class="o">.</span><span class="n">war</span> <span class="n">file</span><span class="p">)</span><span class="o">.</span>
+        <span class="mi">5</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/s</span><span class="n">tandalone</span><span class="o">/</span><span class="n">LICENSE</span><span class="o">.</span> <span class="n">This</span> <span class="n">license</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">the</span> <span class="n">standalone</span> <span class="n">build</span> <span class="n">only</span><span class="o">.</span> <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">the</span> <span class="n">generated</span> <span class="n">standalone</span> <span class="n">build</span><span class="p">)</span>
+        <span class="mi">6</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/s</span><span class="n">tandalone</span><span class="o">/</span><span class="n">NOTICE</span><span class="o">.</span> <span class="n">This</span> <span class="n">notice</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">the</span> <span class="n">standalone</span> <span class="n">build</span> <span class="n">only</span><span class="o">.</span> <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">the</span> <span class="n">generated</span> <span class="n">standalone</span> <span class="n">build</span><span class="p">)</span>
+        <span class="mi">7</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/s</span><span class="n">tandalone</span><span class="o">/</span><span class="n">STANDALONE_BUILD_NOTES</span><span class="o">.</span>  <span class="n">This</span> <span class="n">should</span> <span class="ow">not</span> <span class="n">change</span> <span class="n">very</span> <span class="n">often</span><span class="p">,</span> <span class="n">but</span> <span class="n">a</span> <span class="n">quick</span> <span class="nb">read</span> <span class="n">through</span> <span class="n">is</span> <span class="n">recommended</span> <span class="n">to</span> <span class="n">make</span> <span class="n">sure</span> <span class="n">nothing</span> <span class="n">has</span> <span class="n">changed</span><span class="o">.</span>
+        <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">the</span> <span class="n">generated</span> <span class="n">standalone</span> <span class="n">build</span><span class="p">)</span>
+        <span class="mi">8</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/</span><span class="n">war</span><span class="o">/</span><span class="n">LICENSE</span><span class="o">.</span> <span class="n">This</span> <span class="n">license</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">the</span> <span class="n">war</span> <span class="n">build</span> <span class="n">only</span><span class="o">.</span> <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">the</span> <span class="n">generated</span> <span class="n">war</span> <span class="n">build</span><span class="p">)</span>
+        <span class="mi">9</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/</span><span class="n">war</span><span class="o">/</span><span class="n">NOTICE</span><span class="o">.</span> <span class="n">This</span> <span class="n">notice</span> <span class="n">file</span> <span class="n">is</span> <span class="n">bundled</span> <span class="n">with</span> <span class="n">the</span> <span class="n">war</span> <span class="n">build</span> <span class="n">only</span><span class="o">.</span> <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">the</span> <span class="n">generated</span> <span class="n">war</span> <span class="n">build</span><span class="p">)</span>
+        <span class="mi">10</span><span class="o">.</span> <span class="sr">/trunk/</span><span class="n">etc</span><span class="sr">/release/</span><span class="n">war</span><span class="o">/</span><span class="n">WAR_BUILD_NOTES</span><span class="o">.</span>  <span class="n">This</span> <span class="n">should</span> <span class="ow">not</span> <span class="n">change</span> <span class="n">very</span> <span class="n">often</span><span class="p">,</span> <span class="n">but</span> <span class="n">a</span> <span class="n">quick</span> <span class="nb">read</span> <span class="n">through</span> <span class="n">is</span> <span class="n">recommended</span> <span class="n">to</span> <span class="n">make</span> <span class="n">sure</span> <span class="n">nothing</span> <span class="n">has</span> <span class="n">changed</span><span class="o">.</span>
+        <span class="p">(</span><span class="n">It</span> <span class="n">is</span> <span class="n">found</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">the</span> <span class="n">generated</span> <span class="n">war</span> <span class="n">build</span><span class="p">)</span>
+</pre></div>
+
+
+<h3 id="4-check-all-files-for-license-headers">4. Check all files for license headers</h3>
+<div class="codehilite"><pre><span class="n">Use</span> <span class="n">the</span> <span class="p">[</span><span class="n">Release</span> <span class="n">Audit</span> <span class="n">Tool</span> <span class="p">(</span><span class="n">RAT</span><span class="p">)](</span><span class="n">http:</span><span class="sr">//ci</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/projects/</span><span class="n">wookie</span><span class="o">/</span><span class="n">rat</span><span class="o">-</span><span class="n">output</span><span class="o">.</span><span class="n">html</span><span class="p">)</span> <span class="n">report</span> <span class="n">to</span> <span class="n">find</span> <span class="n">any</span> <span class="n">missing</span> <span class="n">license</span> <span class="n">headers</span><span class="o">.</span> <span class="n">Fix</span> <span class="n">any</span> <span class="n">missing</span> <spa
 n class="n">entries</span><span class="o">.</span>
+</pre></div>
+
+
+<h3 id="5-update-all-references-to-snapshot-in-the-properties-files-and-update-the-pom-templates">5. Update all references to SNAPSHOT in the properties files and update the pom-templates</h3>
+<div class="codehilite"><pre>1. Find the version reference &#39;*.*.*-incubating-SNAPSHOT&#39; in the following files. Update it in each case removing the &#39;-SNAPSHOT&#39; at the end, so that it reads &#39;*.*.*-incubating&#39;
+
+/build.properties
+/ivy.xml
+/connector/java/build.properties
+/connector/java/ivy.xml
+/modules/jcr/build.properties
+/modules/jcr/ivy.xml
+/parser/java/build.properties
+/parser/java/ivy.xml
+/src/widgetserver.properties
+/etc/release/runsignatures.bat
+
+2. Update the 3 pom-template.xml files so that the scm values reference the tag version to be created
+
+/pom-template.xml
+
+Find...
+<span class="nt">&lt;scm&gt;</span>
+    <span class="nt">&lt;connection&gt;</span>scm:svn:http://svn.apache.org/repos/asf/incubator/wookie/trunk<span class="nt">&lt;/connection&gt;</span>
+    <span class="nt">&lt;developerConnection&gt;</span>scm:svn:https://svn.apache.org/repos/asf/incubator/wookie/trunk/<span class="nt">&lt;/developerConnection&gt;</span>
+    <span class="nt">&lt;url&gt;</span>http://svn.apache.org/viewvc/incubator/wookie/trunk/<span class="nt">&lt;/url&gt;</span>
+<span class="nt">&lt;/scm&gt;</span>
+
+...and update it (with correct version number) to read...
+
+<span class="nt">&lt;scm&gt;</span>
+    <span class="nt">&lt;connection&gt;</span>scm:svn:http://svn.apache.org/repos/asf/incubator/wookie/tags/*.*.*-incubating<span class="nt">&lt;/connection&gt;</span>
+    <span class="nt">&lt;developerConnection&gt;</span>scm:svn:https://svn.apache.org/repos/asf/incubator/wookie/tags/*.*.*-incubating/<span class="nt">&lt;/developerConnection&gt;</span>
+    <span class="nt">&lt;url&gt;</span>http://svn.apache.org/viewvc/incubator/wookie/tags/*.*.*-incubating/<span class="nt">&lt;/url&gt;</span>
+<span class="nt">&lt;/scm&gt;</span>
+
+Do the same with the following two files...
+
+/connector/java/pom-template.xml
+/parser/java/pom-template.xml
+
+3. Commit your changes back to svn.
+</pre></div>
+
+
+<h3 id="6-inform-committers-of-temporary-code-freeze">6. Inform committers of temporary code freeze</h3>
+<div class="codehilite"><pre><span class="n">Send</span> <span class="n">an</span> <span class="n">email</span> <span class="n">to</span> <span class="n">wookie</span><span class="o">-</span><span class="n">dev</span><span class="nv">@incubator</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span> <span class="n">informing</span> <span class="n">that</span> <span class="n">you</span> <span class="n">are</span> <span class="n">about</span> <span class="n">to</span> <span class="n">tag</span> <span class="n">the</span> <span class="n">trunk</span><span class="o">.</span>
+<span class="p">(</span><span class="n">just</span> <span class="n">in</span> <span class="k">case</span> <span class="n">there</span> <span class="n">are</span> <span class="n">commits</span> <span class="k">while</span> <span class="n">you</span> <span class="n">are</span> <span class="n">doing</span> <span class="n">it</span><span class="o">.</span>  <span class="n">It</span> <span class="n">only</span> <span class="n">takes</span> <span class="n">a</span> <span class="n">minute</span> <span class="n">to</span> <span class="n">tag</span> <span class="n">it</span><span class="p">,</span> <span class="n">so</span> <span class="ow">not</span> <span class="n">a</span> <span class="n">long</span> <span class="n">freeze</span><span class="o">.</span><span class="p">)</span>
+</pre></div>
+
+
+<h3 id="7-create-a-tag-of-the-current-trunk-state">7. Create a tag of the current trunk state.</h3>
+<div class="codehilite"><pre>    <span class="mi">1</span><span class="o">.</span> <span class="n">Ensure</span> <span class="n">you</span> <span class="n">have</span> <span class="n">checked</span> <span class="n">out</span> <span class="n">a</span> <span class="n">clean</span> <span class="n">copy</span> <span class="n">of</span> <span class="n">the</span> <span class="n">trunk</span> <span class="n">from</span> <span class="n">svn</span><span class="o">.</span>
+    <span class="mi">2</span><span class="o">.</span> <span class="n">In</span> <span class="n">Eclipse</span> <span class="nb">select</span> <span class="n">the</span> <span class="n">wookie</span> <span class="n">root</span> <span class="n">folder</span> <span class="ow">and</span> <span class="n">right</span> <span class="n">click</span><span class="o">.</span> <span class="n">Choose</span> <span class="n">team</span> <span class="o">-&gt;</span> <span class="n">Tag</span><span class="o">...</span>
+    <span class="mi">3</span><span class="o">.</span> <span class="n">A</span> <span class="n">dialog</span> <span class="n">appears</span><span class="o">.</span>
+    <span class="mi">4</span><span class="o">.</span> <span class="n">In</span> <span class="n">the</span> <span class="n">Tag:</span> <span class="n">box</span> <span class="n">enter</span> <span class="n">the</span> <span class="n">release</span> <span class="n">version</span> <span class="n">number</span> <span class="n">i</span><span class="o">.</span><span class="n">e</span><span class="o">.</span> <span class="s">&#39;0.10.0-incubating&#39;</span>
+        <span class="o">-</span> <span class="k">use</span> <span class="n">the</span> <span class="n">same</span> <span class="n">version</span> <span class="n">here</span> <span class="n">as</span> <span class="n">you</span> <span class="n">entered</span> <span class="n">in</span> <span class="n">step</span> <span class="p">(</span><span class="mf">5.2</span><span class="p">)</span> <span class="n">when</span> <span class="n">updating</span> <span class="n">the</span> <span class="n">pom</span><span class="o">-</span><span class="n">template</span> <span class="n">files</span>
+    <span class="mi">5</span><span class="o">.</span> <span class="n">In</span> <span class="n">the</span> <span class="n">Comment</span> <span class="n">box</span> <span class="n">enter</span> <span class="n">something</span> <span class="n">sensible</span> <span class="n">i</span><span class="o">.</span><span class="n">e</span><span class="o">.</span> <span class="s">&#39;wookie release 0.10.0-incubating&#39;</span>
+    <span class="mi">6</span><span class="o">.</span> <span class="n">Click</span> <span class="n">ok</span> <span class="n">to</span> <span class="n">create</span> <span class="n">the</span> <span class="n">tag</span><span class="o">.</span>
+    <span class="mi">7</span><span class="o">.</span> <span class="n">If</span> <span class="n">you</span> <span class="n">tick</span> <span class="n">the</span> <span class="s">&quot;Start working in the tag&quot;</span> <span class="n">box</span><span class="p">,</span> <span class="n">the</span> <span class="n">tag</span> <span class="n">will</span> <span class="n">be</span> <span class="n">created</span> <span class="ow">and</span> <span class="n">your</span> <span class="nb">local</span> <span class="n">copy</span> <span class="n">will</span> <span class="n">update</span> <span class="n">to</span> <span class="n">the</span> <span class="n">tagged</span> <span class="n">version</span>
+    <span class="mi">8</span><span class="o">.</span> <span class="n">Verify</span> <span class="n">the</span> <span class="n">tag</span> <span class="n">was</span> <span class="n">created</span> <span class="n">correctly</span> <span class="o">&amp;</span> <span class="n">in</span> <span class="n">the</span> <span class="n">right</span> <span class="n">place</span><span class="o">.</span> 
+        <span class="o">-</span> <span class="n">In</span> <span class="n">the</span> <span class="n">Eclipse</span> <span class="n">SVN</span> <span class="n">Repository</span> <span class="n">Exploring</span> <span class="n">view</span> <span class="n">you</span> <span class="n">can</span> <span class="n">navigate</span> <span class="n">to</span> <span class="n">svn</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/repos/</span><span class="n">asf</span><span class="sr">/incubator/</span><span class="n">wookie</span><span class="sr">/tags/</span> <span class="ow">and</span> <span class="n">make</span> <span class="n">sure</span> <span class="n">the</span> <span class="n">tag</span> <span class="nb">exists</span><span class="o">.</span>
+</pre></div>
+
+
+<h3 id="8-roll-version-number-forward-in-all-properties-files-in-the-trunk">8. Roll version number forward in all properties files in the trunk.</h3>
+<div class="codehilite"><pre>    <span class="mi">1</span><span class="o">.</span> <span class="n">If</span> <span class="n">you</span> <span class="n">haven</span><span class="err">&#39;</span><span class="n">t</span> <span class="n">already</span><span class="p">,</span> <span class="n">switch</span> <span class="n">back</span> <span class="n">to</span> <span class="n">the</span> <span class="n">trunk</span><span class="o">.</span> 
+    <span class="mi">2</span><span class="o">.</span> <span class="n">Find</span> <span class="n">all</span> <span class="n">the</span> <span class="n">files</span> <span class="n">listed</span> <span class="n">in</span> <span class="n">step</span> <span class="p">(</span><span class="c1">#5.1) above.</span>
+    <span class="mi">3</span><span class="o">.</span> <span class="n">Update</span> <span class="n">all</span> <span class="n">the</span> <span class="n">entries</span> <span class="n">to</span> <span class="n">the</span> <span class="k">next</span> <span class="n">version</span><span class="o">-</span><span class="n">SNAPSHOT</span> <span class="o">-</span> <span class="n">i</span><span class="o">.</span><span class="n">e</span><span class="o">.</span> <span class="mf">0.11.0</span><span class="o">-</span><span class="n">incubating</span><span class="o">-</span><span class="n">SNAPSHOT</span>
+    <span class="mi">4</span><span class="o">.</span> <span class="n">Update</span> <span class="n">the</span> <span class="mi">3</span> <span class="n">pom</span><span class="o">-</span><span class="n">template</span><span class="o">.</span><span class="n">xml</span> <span class="n">files</span> <span class="n">in</span> <span class="n">step</span> <span class="p">(</span><span class="c1">#5.2) above so that they point back at the trunk again</span>
+    <span class="mi">5</span><span class="o">.</span> <span class="n">Commit</span> <span class="n">your</span> <span class="n">changes</span>
+</pre></div>
+
+
+<h3 id="9-inform-commiters-that-you-have-finished">9. Inform commiters that you have finished</h3>
+<div class="codehilite"><pre><span class="n">Send</span> <span class="n">an</span> <span class="n">email</span> <span class="n">to</span> <span class="n">wookie</span><span class="o">-</span><span class="n">dev</span><span class="nv">@incubator</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span> <span class="n">informing</span> <span class="n">that</span> <span class="n">you</span> <span class="n">have</span> <span class="n">tagged</span> <span class="n">the</span> <span class="n">trunk</span> <span class="k">for</span> <span class="n">the</span> <span class="n">build</span> <span class="ow">and</span> <span class="n">that</span> <span class="n">the</span> <span class="n">trunk</span> <span class="n">has</span> <span class="n">now</span> <span class="n">rolled</span> <span class="n">to</span> <span class="n">the</span> <span class="k">next</span> <span class="n">version</span><span class="o">.</span> <span class="p">(
 </span><span class="n">which</span> <span class="n">also</span> <span class="n">means</span> <span class="n">the</span> <span class="n">freeze</span> <span class="n">has</span> <span class="n">been</span> <span class="n">lifted</span><span class="p">)</span>
+</pre></div>
+
+
+<h3 id="10-run-the-build-script">10. Run the build script</h3>
+<div class="codehilite"><pre>    <span class="mi">1</span><span class="o">.</span> <span class="n">Switch</span> <span class="n">back</span> <span class="n">to</span> <span class="n">the</span> <span class="n">trunk</span><span class="o">.</span> <span class="n">Run</span> <span class="n">the</span> <span class="n">ant</span> <span class="n">task</span> <span class="s">&#39;build-release-all&#39;</span> <span class="n">found</span> <span class="n">in</span> <span class="n">the</span> <span class="n">root</span> <span class="n">build</span><span class="o">.</span><span class="n">xml</span> <span class="n">file</span>
+        <span class="o">-</span> <span class="n">either</span> <span class="k">use</span> <span class="n">eclipse</span> <span class="n">to</span> <span class="n">run</span> <span class="n">it</span> <span class="ow">or</span> <span class="k">use</span> <span class="s">&#39;ant build-release-all&#39;</span> <span class="n">on</span> <span class="n">the</span> <span class="n">command</span> <span class="n">line</span> <span class="n">at</span> <span class="n">the</span> <span class="n">wookie</span> <span class="n">root</span> <span class="n">folder</span>
+    <span class="mi">2</span><span class="o">.</span> <span class="n">This</span> <span class="n">should</span> <span class="n">generate</span> <span class="n">a</span> <span class="k">new</span> <span class="n">folder</span> <span class="n">at</span> <span class="n">the</span> <span class="n">root</span> <span class="n">of</span> <span class="n">wookie</span> <span class="n">called</span> <span class="s">&#39;release&#39;</span> <span class="n">containing</span> <span class="n">the</span> <span class="n">following</span> <span class="n">structure</span><span class="o">...</span>
+
+    <span class="n">release</span>
+        <span class="o">+</span> <span class="o">*.*.*-</span><span class="n">incubating</span>
+            <span class="o">+</span> <span class="n">binary</span>
+                <span class="o">+</span> <span class="n">standalone</span>
+                    <span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-*.*.*-</span><span class="n">incubating</span><span class="o">-</span><span class="n">standalone</span><span class="o">.</span><span class="n">tar</span><span class="o">.</span><span class="n">gz</span>
+                    <span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-*.*.*-</span><span class="n">incubating</span><span class="o">-</span><span class="n">standalone</span><span class="o">.</span><span class="n">zip</span>
+                    <span class="n">rat</span><span class="o">-</span><span class="n">report</span><span class="o">.</span><span class="n">txt</span>
+                <span class="o">+</span> <span class="n">war</span>
+                    <span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-*.*.*-</span><span class="n">incubating</span><span class="o">-</span><span class="n">war</span><span class="o">.</span><span class="n">tar</span><span class="o">.</span><span class="n">gz</span>
+                    <span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-*.*.*-</span><span class="n">incubating</span><span class="o">-</span><span class="n">war</span><span class="o">.</span><span class="n">zip</span>
+                    <span class="n">rat</span><span class="o">-</span><span class="n">report</span><span class="o">.</span><span class="n">txt</span>
+            <span class="o">+</span> <span class="n">source</span>
+                <span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-*.*.*-</span><span class="n">incubating</span><span class="o">-</span><span class="n">src</span><span class="o">.</span><span class="n">tar</span><span class="o">.</span><span class="n">gz</span>
+                <span class="n">apache</span><span class="o">-</span><span class="n">wookie</span><span class="o">-*.*.*-</span><span class="n">incubating</span><span class="o">-</span><span class="n">src</span><span class="o">.</span><span class="n">zip</span>
+                <span class="n">rat</span><span class="o">-</span><span class="n">report</span><span class="o">.</span><span class="n">txt</span>
+        <span class="n">runsignatures</span><span class="o">.</span><span class="n">bat</span>
+
+    <span class="mi">3</span><span class="o">.</span> <span class="n">The</span> <span class="n">rat</span><span class="o">-</span><span class="n">report</span><span class="o">.</span><span class="n">txt</span> <span class="n">files</span> <span class="n">are</span> <span class="k">for</span> <span class="n">your</span> <span class="n">reference</span> <span class="ow">and</span> <span class="n">can</span> <span class="n">be</span> <span class="n">removed</span> <span class="n">when</span> <span class="n">checked</span><span class="o">.</span> 
+    <span class="mi">4</span><span class="o">.</span> <span class="n">Open</span> <span class="n">a</span> <span class="n">command</span> <span class="n">prompt</span> <span class="ow">and</span> <span class="n">run</span> <span class="n">the</span> <span class="s">&#39;runsignatures.bat&#39;</span> <span class="n">file</span>
+    <span class="p">(</span><span class="n">AUTHOR</span> <span class="n">NOTE:</span> <span class="n">we</span> <span class="n">need</span> <span class="n">to</span> <span class="n">either</span> <span class="n">also</span> <span class="n">supply</span> <span class="n">a</span> <span class="o">.</span><span class="n">sh</span> <span class="n">version</span> <span class="n">of</span> <span class="n">this</span> <span class="ow">or</span> <span class="n">better</span> <span class="n">still</span> <span class="n">automate</span> <span class="n">it</span><span class="p">)</span>
+        <span class="o">-</span> <span class="n">This</span> <span class="n">creates</span> <span class="n">the</span> <span class="n">ASC</span> <span class="n">signatures</span><span class="p">,</span> <span class="n">MD5</span> <span class="ow">and</span> <span class="n">SHA</span> <span class="n">files</span> <span class="n">needed</span> <span class="k">for</span> <span class="n">file</span> <span class="n">verification</span>
+        <span class="o">-</span> <span class="n">This</span> <span class="n">will</span> <span class="n">only</span> <span class="n">work</span> <span class="k">if</span> <span class="n">you</span> <span class="n">have</span> <span class="n">already</span> <span class="n">followed</span> <span class="n">the</span> <span class="n">steps</span> <span class="n">outlined</span> <span class="n">in</span> <span class="n">the</span> <span class="p">[</span><span class="n">Release</span> <span class="n">Setup</span><span class="p">](</span><span class="n">release</span><span class="o">-</span><span class="n">configuration</span><span class="o">.</span><span class="n">html</span><span class="p">)</span>
+    <span class="mi">5</span><span class="o">.</span> <span class="n">Manually</span> <span class="n">check</span> <span class="n">the</span> <span class="n">ASC</span><span class="p">,</span> <span class="n">MD5</span> <span class="ow">and</span> <span class="n">SHA</span> <span class="n">files</span> <span class="n">are</span> <span class="n">correct</span>
+        <span class="o">-</span> <span class="n">The</span> <span class="n">generated</span> <span class="n">ASC</span> <span class="n">files</span> <span class="n">are</span> <span class="n">automatically</span> <span class="n">checked</span> <span class="n">when</span> <span class="n">you</span> <span class="n">run</span> <span class="n">the</span> <span class="s">&#39;runsignatures.bat&#39;</span> <span class="p">(</span><span class="n">see</span> <span class="n">how</span> <span class="n">in</span> <span class="n">the</span> <span class="n">file</span><span class="p">),</span> <span class="n">but</span> <span class="n">the</span> <span class="n">SHA</span> <span class="ow">and</span> <span class="n">MD5</span> <span class="n">are</span> <span class="ow">not</span>
+        <span class="o">-</span> <span class="n">These</span> <span class="n">can</span> <span class="n">be</span> <span class="n">checked</span> <span class="n">using</span> <span class="n">openssl</span> <span class="n">at</span> <span class="n">the</span> <span class="n">command</span> <span class="n">prompt</span><span class="p">,</span> <span class="k">for</span> <span class="n">example</span><span class="o">...</span>
+            <span class="o">-</span> <span class="s">&#39;openssl sha512 &lt;buildname.zip&gt;&#39;</span> <span class="o">-</span> <span class="n">should</span> <span class="n">generate</span> <span class="n">same</span> <span class="n">key</span> <span class="n">on</span> <span class="n">screen</span> <span class="n">as</span> <span class="n">found</span> <span class="n">in</span> <span class="n">the</span> <span class="n">buildname</span><span class="o">.</span><span class="n">zip</span><span class="o">.</span><span class="n">sha</span> <span class="n">file</span>
+            <span class="o">-</span> <span class="s">&#39;openssl md5 &lt;buildname.zip&gt;&#39;</span> <span class="o">-</span> <span class="n">should</span> <span class="n">generate</span> <span class="n">same</span> <span class="n">key</span> <span class="n">on</span> <span class="n">screen</span> <span class="n">as</span> <span class="n">found</span> <span class="n">in</span> <span class="n">the</span> <span class="n">buildname</span><span class="o">.</span><span class="n">zip</span><span class="o">.</span><span class="n">md5</span> <span class="n">file</span>
+    <span class="mi">6</span><span class="o">.</span> <span class="n">Open</span> <span class="nb">each</span> <span class="n">build</span> <span class="n">artifact</span> <span class="ow">and</span> <span class="n">test</span> <span class="n">that</span> <span class="n">it</span><span class="o">...</span>
+            <span class="o">-</span> <span class="n">contains</span> <span class="n">the</span> <span class="n">correct</span> <span class="n">NOTICE</span> <span class="o">&amp;</span> <span class="n">LICENSE</span> <span class="n">files</span> <span class="n">where</span> <span class="n">appropriate</span>
+            <span class="o">-</span> <span class="n">the</span> <span class="n">source</span> <span class="n">builds</span> <span class="n">will</span> <span class="n">build</span> <span class="n">from</span> <span class="n">the</span> <span class="n">command</span> <span class="n">prompt</span><span class="p">,</span> <span class="n">using</span> <span class="s">&#39;ant compile-core&#39;</span>
+            <span class="o">-</span> <span class="n">the</span> <span class="n">standalone</span> <span class="n">builds</span> <span class="n">will</span> <span class="n">run</span> <span class="n">when</span> <span class="n">you</span> <span class="n">click</span> <span class="n">it</span><span class="err">&#39;</span><span class="n">s</span> <span class="n">startup</span> <span class="n">script</span> <span class="p">(</span><span class="n">May</span> <span class="n">need</span> <span class="n">to</span> <span class="n">add</span> <span class="n">executable</span> <span class="n">permissions</span> <span class="n">on</span> <span class="n">mac</span><span class="o">/</span><span class="n">linux</span><span class="p">)</span>
+            <span class="o">-</span> <span class="n">examine</span> <span class="n">the</span> <span class="n">WAR</span> <span class="n">build</span> <span class="k">for</span> <span class="n">integrity</span> <span class="p">(</span><span class="n">also</span> <span class="n">ideally</span> <span class="n">drop</span> <span class="n">the</span> <span class="n">WAR</span> <span class="n">file</span> <span class="n">into</span> <span class="n">a</span> <span class="n">preconfigured</span> <span class="n">tomcat</span><span class="sr">/mysql instance on your machine to make sure it deploys/</span><span class="n">works</span> <span class="n">okay</span><span class="p">)</span>
+</pre></div>
+
+
+<h3 id="11-upload-the-artifacts-to-peopleapacheorg">11. Upload the artifacts to people.apache.org</h3>
+<div class="codehilite"><pre>1. Make sure you delete the 3 rat-report.txt files (otherwise the next stage will upload them)
+2. From the &#39;wookie/release&#39; folder run the following to upload the generated build folder and artifacts...
+
+scp -r <span class="cp">${</span><span class="n">project</span><span class="o">.</span><span class="n">version</span><span class="cp">}</span> <span class="cp">${</span><span class="n">user</span><span class="o">.</span><span class="n">name</span><span class="cp">}</span>@people.apache.org:/www/people.apache.org/builds/incubator/wookie/
+
+...substituting the <span class="cp">${</span><span class="n">project</span><span class="o">.</span><span class="n">version</span><span class="cp">}</span> with the folder name of the generated artifacts i.e...
+
+scp -r ./0.10.0-incubating joebloggs@people.apache.org:/www/people.apache.org/builds/incubator/wookie/
+
+(Note: the pscp utility comes with putty, rather than scp)
+
+3. Verify they are downloadable from http://people.apache.org/builds/incubator/wookie
+</pre></div>
+
+
+<h3 id="12-upload-the-nexus-release-artifacts">12. Upload the Nexus release artifacts</h3>
+<div class="codehilite"><pre>1. If you use eclipse to run your ant tasks then right click the /build.xml
+    - choose run as -&gt; ant build...
+    - highlight the &quot;Main&quot; tab and in the &quot;Arguments&quot; panel add the following
+
+    -Duser.name=&quot;My Name&quot; -Dupload.user=your_apache_userid 
+        -Dupload.password=your_svn_password -Dpgp.password=your_pgp_password -Dpgp.keyId=your_pgp_keyid
+
+    (substituting your details where applicable)
+
+    - click apply.
+2. To check/preview the Nexus artifacts locally first run &#39;ant publish-local&#39; found in the root build.xml file
+    - this publishes all artifacts (parser, connector and self contained WAR) locally only and
+      can be found under <span class="cp">${</span><span class="n">user</span><span class="o">.</span><span class="n">home</span><span class="cp">}</span>\.m2\repository\org\apache\wookie
+3. Once again check to make sure the correct LICENSE and NOTICE files appear in each /META-INF folder found within each archive
+4. When you are happy the generated files are okay, either run the following ant task at the command prompt to deploy to Nexus...
+
+ant publish-maven-release-artifacts publish-subproject-artifacts-to-release-repo -Duser.name=&quot;My Name&quot; -Dupload.user=your_apache_userid 
+        -Dupload.user=your_apache_userid -Dupload.password=your_svn_password -Dpgp.password=your_pgp_password -Dpgp.keyId=your_pgp_keyid
+
+or if you have completed step (1.) above, simply right click the root build.xml and choose to run &#39;publish-maven-release-artifacts&#39; 
+and &#39;publish-subproject-artifacts-to-release-repo&#39;
+(AUTHOR NOTE: we need to merge these ant tasks into 1 call)
+
+5. Verify the staged artifacts in the Nexus repository
+    https://repository.apache.org/index.html
+    Staging repositories (under Build Promotion) --&gt; Name column --&gt; org.apache.wookie
+    Navigate through the artifact tree and make sure that all javadoc, sources, tests, jars, ... have .asc (GPG signature) and .md5 files. 
+    See http://people.apache.org/~henkp/repo/faq.html and http://www.apache.org/dev/release-signing.html#openpgp-ascii-detach-sig
+
+6. Close the Nexus staging repository
+    https://repository.apache.org/index.html
+    Staging repositories (under Build Promotion) --&gt; Name column --&gt; org.apache.wookie
+    Click checkbox for the open staging repo (org.apache.wookie-XXX) and press Close in the menu bar.
+</pre></div>
+
+
+<h3 id="13-put-the-release-candidate-up-for-a-vote-on-the-wookie-dev-list">13. Put the release candidate up for a vote on the wookie-dev list</h3>
+<div class="codehilite"><pre><span class="mi">1</span><span class="o">.</span> <span class="n">Create</span> <span class="n">a</span> <span class="n">VOTE</span> <span class="n">email</span> <span class="n">thread</span> <span class="n">on</span> <span class="n">wookie</span><span class="o">-</span><span class="n">dev</span><span class="nv">@</span> <span class="nv">to</span> <span class="n">record</span> <span class="n">votes</span> <span class="n">as</span> <span class="n">replies</span><span class="p">,</span> <span class="n">like</span> <span class="p">[</span><span class="n">this</span><span class="p">](</span><span class="n">release</span><span class="o">-</span><span class="n">vote</span><span class="o">.</span><span class="n">txt</span><span class="p">)</span>
+<span class="mi">2</span><span class="o">.</span> <span class="n">Create</span> <span class="n">a</span> <span class="n">DISCUSS</span> <span class="n">email</span> <span class="n">thread</span> <span class="n">on</span> <span class="n">wookie</span><span class="o">-</span><span class="n">dev</span><span class="nv">@</span> <span class="nv">for</span> <span class="n">any</span> <span class="n">vote</span> <span class="n">questions</span><span class="p">,</span> <span class="p">[</span><span class="n">this</span><span class="p">](</span><span class="n">release</span><span class="o">-</span><span class="n">discuss</span><span class="o">.</span><span class="n">txt</span><span class="p">)</span>
+<span class="mi">3</span><span class="o">.</span> <span class="n">Perform</span> <span class="n">a</span> <span class="n">review</span> <span class="n">of</span> <span class="n">the</span> <span class="n">release</span> <span class="ow">and</span> <span class="n">cast</span> <span class="n">your</span> <span class="n">vote</span><span class="o">.</span> <span class="n">See</span> <span class="n">the</span> <span class="n">following</span> <span class="k">for</span> <span class="n">more</span> <span class="n">details</span> <span class="n">on</span> <span class="n">Apache</span> <span class="n">releases</span>
+
+<span class="p">[</span><span class="n">http:</span><span class="sr">//</span><span class="n">www</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/dev/</span><span class="n">release</span><span class="o">.</span><span class="n">html</span><span class="p">](</span><span class="n">http:</span><span class="sr">//</span><span class="n">www</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/dev/</span><span class="n">release</span><span class="o">.</span><span class="n">html</span><span class="p">)</span>
+
+<span class="mi">4</span><span class="o">.</span> <span class="n">A</span> <span class="o">-</span><span class="mi">1</span> <span class="n">vote</span> <span class="n">does</span> <span class="ow">not</span> <span class="n">necessarily</span> <span class="n">mean</span> <span class="n">that</span> <span class="n">the</span> <span class="n">vote</span> <span class="n">must</span> <span class="n">be</span> <span class="n">redone</span><span class="p">,</span> <span class="n">however</span> <span class="n">it</span> <span class="n">is</span> <span class="n">usually</span> <span class="n">a</span> <span class="n">good</span> <span class="n">idea</span> <span class="n">to</span> <span class="n">rollback</span> <span class="n">the</span> <span class="n">release</span> <span class="k">if</span> <span class="n">a</span> <span class="o">-</span><span class="mi">1</span> <span class="n">vote</span> <span class="n">is</span> <span class="n">received</span><span class="o">.</span> 
+    <span class="o">-</span> <span class="n">See</span> <span class="o">-</span> <span class="n">Recovering</span> <span class="n">from</span> <span class="n">a</span> <span class="n">vetoed</span> <span class="n">release</span>
+
+<span class="mi">5</span><span class="o">.</span> <span class="n">After</span> <span class="n">the</span> <span class="n">vote</span> <span class="n">has</span> <span class="n">been</span> <span class="nb">open</span> <span class="k">for</span> <span class="n">at</span> <span class="n">least</span> <span class="mi">72</span> <span class="n">hours</span><span class="p">,</span> <span class="n">has</span> <span class="n">at</span> <span class="n">least</span> <span class="n">three</span> <span class="o">+</span><span class="mi">1</span> <span class="n">PMC</span> <span class="n">votes</span> <span class="ow">and</span> <span class="nb">no</span> <span class="o">-</span><span class="mi">1</span> <span class="n">votes</span><span class="p">,</span> <span class="k">then</span> <span class="n">post</span> <span class="n">the</span> <span class="n">results</span> <span class="n">to</span> <span class="n">the</span> <span class="n">vote</span> <span class="n">thread</span>
+    <span class="o">-</span> <span class="n">reply</span> <span class="n">to</span> <span class="n">the</span> <span class="n">initial</span> <span class="n">email</span> <span class="ow">and</span> <span class="n">prepend</span> <span class="n">to</span> <span class="n">the</span> <span class="n">original</span> <span class="n">subject</span> <span class="s">&quot;[RESULT]&quot;</span>
+    <span class="o">-</span> <span class="n">Include</span> <span class="n">a</span> <span class="n">list</span> <span class="n">of</span> <span class="n">everyone</span> <span class="n">who</span> <span class="n">voted</span> <span class="o">+</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span> <span class="ow">or</span> <span class="o">-</span><span class="mi">1</span><span class="o">.</span>
+</pre></div>
+
+
+<h3 id="14-put-the-release-candidate-up-for-a-vote-on-the-incubator-general-list">14. Put the release candidate up for a vote on the incubator general list</h3>
+<div class="codehilite"><pre><span class="mi">1</span><span class="o">.</span> <span class="n">Create</span> <span class="n">similar</span> <span class="n">VOTE</span> <span class="n">email</span> <span class="n">on</span> <span class="n">the</span> <span class="n">general</span><span class="nv">@incubator</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span> <span class="n">list</span><span class="p">,</span> <span class="n">like</span> <span class="p">[</span><span class="n">this</span><span class="p">](</span><span class="n">release</span><span class="o">-</span><span class="n">vote</span><span class="o">-</span><span class="n">general</span><span class="o">.</span><span class="n">txt</span><span class="p">)</span> 
+    <span class="o">-</span> <span class="n">Depending</span> <span class="n">on</span> <span class="n">how</span> <span class="n">many</span> <span class="n">binding</span> <span class="o">+</span><span class="mi">1</span> <span class="n">IPMC</span> <span class="n">votes</span> <span class="n">the</span> <span class="n">release</span> <span class="n">candidates</span> <span class="n">received</span><span class="p">,</span> <span class="n">you</span> <span class="n">may</span> <span class="n">need</span> <span class="n">to</span> <span class="nb">wait</span> <span class="k">for</span> <span class="n">additional</span> <span class="n">ones</span> <span class="n">from</span> <span class="n">the</span> <span class="n">general</span> <span class="n">list</span>
+<span class="mi">2</span><span class="o">.</span> <span class="n">After</span> <span class="n">the</span> <span class="n">vote</span> <span class="n">has</span> <span class="n">been</span> <span class="nb">open</span> <span class="k">for</span> <span class="n">at</span> <span class="n">least</span> <span class="mi">72</span> <span class="n">hours</span> <span class="ow">and</span> <span class="n">has</span> <span class="n">at</span> <span class="n">least</span> <span class="n">three</span> <span class="o">+</span><span class="mi">1</span> <span class="n">IPMC</span> <span class="n">votes</span> <span class="p">(</span><span class="n">in</span> <span class="n">total</span><span class="p">)</span> <span class="k">then</span> <span class="n">post</span> <span class="n">the</span> <span class="n">results</span> <span class="n">to</span> <span class="n">the</span> <span class="n">vote</span> <span class="n">thread</span>
+    <span class="o">-</span> <span class="n">reply</span> <span class="n">to</span> <span class="n">the</span> <span class="n">initial</span> <span class="n">email</span> <span class="ow">and</span> <span class="n">prepend</span> <span class="n">to</span> <span class="n">the</span> <span class="n">original</span> <span class="n">subject</span> <span class="s">&quot;[RESULT]&quot;</span>
+    <span class="o">-</span> <span class="n">Include</span> <span class="n">a</span> <span class="n">list</span> <span class="n">of</span> <span class="n">everyone</span> <span class="n">who</span> <span class="n">voted</span> <span class="o">+</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span> <span class="ow">or</span> <span class="o">-</span><span class="mi">1</span><span class="o">.</span>
+<span class="mi">3</span><span class="o">.</span> <span class="n">NOTE:</span> <span class="n">For</span> <span class="n">the</span> <span class="n">release</span> <span class="n">candidate</span> <span class="n">to</span> <span class="n">be</span> <span class="n">successful</span> <span class="n">it</span> <span class="n">must</span> <span class="n">at</span> <span class="n">least</span> <span class="n">have</span> <span class="n">received</span> <span class="n">at</span> <span class="n">least</span> <span class="mi">3</span> <span class="o">+</span><span class="mi">1</span> <span class="n">IPMC</span> <span class="n">votes</span> <span class="n">combined</span> <span class="n">from</span> <span class="n">both</span> <span class="n">wookie</span><span class="o">-</span><span class="n">dev</span> <span class="ow">and</span> <span class="n">general</span><span class="o">.</span>
+</pre></div>
+
+
+<h3 id="15-finalizing-a-release">15. Finalizing a release</h3>
+<div class="codehilite"><pre><span class="mi">1</span><span class="o">.</span> <span class="n">Promote</span> <span class="n">the</span> <span class="n">staged</span> <span class="n">nexus</span> <span class="n">artifacts</span>
+    <span class="o">-</span> <span class="n">https:</span><span class="sr">//</span><span class="n">repository</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="o">/</span><span class="nb">index</span><span class="o">.</span><span class="n">html</span>
+    <span class="o">-</span> <span class="n">Staging</span> <span class="n">repositories</span> <span class="p">(</span><span class="n">under</span> <span class="n">Build</span> <span class="n">Promotion</span><span class="p">)</span> <span class="o">--&gt;</span> <span class="n">Name</span> <span class="n">column</span> <span class="o">--&gt;</span> <span class="n">org</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">wookie</span>
+    <span class="o">-</span> <span class="n">Click</span> <span class="n">checkbox</span> <span class="n">of</span> <span class="n">the</span> <span class="n">closed</span> <span class="n">staging</span> <span class="n">repo</span> <span class="p">(</span><span class="n">org</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">wookie</span><span class="o">-***</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">select</span> <span class="n">Release</span><span class="o">.</span>
+<span class="mi">2</span><span class="o">.</span> <span class="n">Copy</span> <span class="n">the</span> <span class="n">release</span> <span class="n">artifacts</span> <span class="n">over</span> <span class="n">to</span> <span class="n">the</span> <span class="n">distribution</span> <span class="n">area</span>
+    <span class="o">-</span> <span class="n">login</span> <span class="n">to</span> <span class="n">people</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span> <span class="ow">and</span> <span class="n">copy</span> <span class="n">across</span> <span class="n">the</span> <span class="n">build</span> <span class="n">folder</span>
+
+      <span class="n">cp</span> <span class="o">-</span><span class="n">r</span> <span class="sr">/www/</span><span class="n">people</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/builds/i</span><span class="n">ncubator</span><span class="sr">/wookie/</span><span class="o">*.*.*-</span><span class="n">incubating</span> <span class="sr">/www/</span><span class="n">www</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/dist/i</span><span class="n">ncubator</span><span class="o">/</span><span class="n">wookie</span>
+
+      <span class="p">(</span><span class="n">replacing</span> <span class="n">the</span> <span class="n">version</span> <span class="n">name</span> <span class="n">accordingly</span><span class="p">)</span>
+
+     <span class="o">-</span> <span class="n">verify</span> <span class="n">the</span> <span class="n">folder</span> <span class="ow">and</span> <span class="n">contents</span> <span class="n">copied</span> <span class="n">across</span> <span class="n">okay</span><span class="o">.</span>
+<span class="mi">3</span><span class="o">.</span> <span class="n">Delete</span> <span class="n">the</span> <span class="n">staged</span> <span class="n">version</span> <span class="p">(</span><span class="n">cleanup</span><span class="p">)</span>
+    <span class="o">-</span> <span class="n">login</span> <span class="n">to</span> <span class="n">people</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span> <span class="p">(</span><span class="k">if</span> <span class="ow">not</span> <span class="n">already</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">delete</span> <span class="n">the</span> <span class="n">old</span> <span class="n">staged</span> <span class="n">release</span>
+
+    <span class="n">rm</span> <span class="o">-</span><span class="n">rfv</span> <span class="sr">/www/</span><span class="n">people</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/builds/i</span><span class="n">ncubator</span><span class="sr">/wookie/</span><span class="o">*.*.*-</span><span class="n">incubating</span>
+
+    <span class="p">(</span><span class="n">replacing</span> <span class="n">the</span> <span class="n">version</span> <span class="n">name</span> <span class="n">accordingly</span><span class="p">)</span>
+
+<span class="mi">4</span><span class="o">.</span> <span class="n">Update</span> <span class="n">the</span> <span class="n">staged</span> <span class="n">website</span>
+    <span class="o">-</span> <span class="n">Update</span> <span class="n">the</span> <span class="n">downloads</span> <span class="n">page</span> <span class="n">to</span> <span class="n">add</span> <span class="k">new</span> <span class="n">version</span> <span class="n">using</span> <span class="n">the</span> <span class="n">mirrored</span> <span class="n">URLs</span>
+    <span class="o">-</span> <span class="n">Modify</span> <span class="n">the</span> <span class="n">URL</span> <span class="k">for</span> <span class="n">the</span> <span class="n">prior</span> <span class="n">release</span> <span class="n">to</span> <span class="n">the</span> <span class="n">archived</span> <span class="n">URL</span> <span class="k">for</span> <span class="n">the</span> <span class="n">release</span>
+
+<span class="mi">5</span><span class="o">.</span> <span class="n">Publish</span> <span class="n">the</span> <span class="n">website</span>
+    <span class="o">-</span> <span class="n">Wait</span> <span class="mi">24</span><span class="n">hrs</span> <span class="n">after</span> <span class="n">committing</span> <span class="n">releases</span> <span class="k">for</span> <span class="n">mirrors</span> <span class="n">to</span> <span class="n">replicate</span>
+    <span class="o">-</span> <span class="n">Publish</span> <span class="n">updates</span> <span class="n">to</span> <span class="n">the</span> <span class="n">download</span> <span class="n">page</span>
+</pre></div>
+
+
+<h3 id="16-update-jira">16. Update JIRA</h3>
+<div class="codehilite"><pre><span class="mi">1</span><span class="o">.</span> <span class="n">Update</span> <span class="n">the</span> <span class="n">JIRA</span> <span class="n">versions</span> <span class="n">page</span> <span class="n">to</span> <span class="nb">close</span> <span class="n">all</span> <span class="n">issues</span><span class="p">,</span> <span class="n">mark</span> <span class="n">the</span> <span class="n">version</span> <span class="n">as</span> <span class="s">&quot;released&quot;</span><span class="p">,</span> <span class="ow">and</span> <span class="n">set</span> <span class="n">the</span> <span class="n">date</span> <span class="n">to</span> <span class="n">the</span> <span class="n">date</span> <span class="n">that</span> <span class="n">the</span> <span class="n">release</span> <span class="n">was</span> <span class="n">approved</span><span class="o">.</span> 
+<span class="n">You</span> <span class="n">may</span> <span class="n">also</span> <span class="n">need</span> <span class="n">to</span> <span class="n">make</span> <span class="n">a</span> <span class="k">new</span> <span class="n">release</span> <span class="n">entry</span> <span class="k">for</span> <span class="n">the</span> <span class="k">next</span> <span class="n">release</span><span class="o">.</span>
+</pre></div>
+
+
+<h3 id="17-announcing-the-release">17. Announcing the release</h3>
+<div class="codehilite"><pre><span class="mi">1</span><span class="o">.</span> <span class="n">Make</span> <span class="n">a</span> <span class="n">news</span> <span class="n">announcement</span> <span class="n">on</span> <span class="n">the</span> <span class="n">Wookie</span> <span class="n">News</span> <span class="n">page</span><span class="o">.</span>
+<span class="mi">2</span><span class="o">.</span> <span class="n">Make</span> <span class="n">an</span> <span class="n">announcement</span> <span class="n">about</span> <span class="n">the</span> <span class="n">release</span> <span class="n">on</span> <span class="n">the</span> <span class="n">following</span> <span class="n">lists</span> 
+    <span class="o">-</span> <span class="n">wookie</span><span class="o">-</span><span class="n">dev</span><span class="nv">@incubator</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span>
+    <span class="o">-</span> <span class="n">wookie</span><span class="o">-</span><span class="n">users</span><span class="nv">@incubator</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span>
+    <span class="o">-</span> <span class="n">announce</span><span class="nv">@apache</span><span class="o">.</span><span class="n">org</span>
+</pre></div>
+
+
+<h3 id="18-recovering-from-a-vetoed-release">18. Recovering from a vetoed release</h3>
+<div class="codehilite"><pre>1. Reply to the initial vote email and prepend to the original subject -
+
+[CANCELED]
+

[... 32 lines stripped ...]