Author: buildbot
Date: Wed Jan 28 16:49:48 2015
New Revision: 938075
Log:
Staging update by buildbot for slider
Modified:
websites/staging/slider/trunk/content/ (props changed)
websites/staging/slider/trunk/content/developing/releasing.html
Propchange: websites/staging/slider/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Wed Jan 28 16:49:48 2015
@@ -1 +1 @@
-1655105
+1655389
Modified: websites/staging/slider/trunk/content/developing/releasing.html
==============================================================================
--- websites/staging/slider/trunk/content/developing/releasing.html (original)
+++ websites/staging/slider/trunk/content/developing/releasing.html Wed Jan 28
16:49:48 2015
@@ -178,7 +178,7 @@ Latest release: <strong>0.60.0-incubatin
-->
<h1 id="apache-slider-release-process">Apache Slider Release Process</h1>
-<p>Here is our release process.</p>
+<p>Here is our release process from Slider 0.61-incubating onwards (January
2015)</p>
<h3 id="tooling">Tooling</h3>
<p>As well as everything needed to build slider, there are some extra
requirements
for releasing:</p>
@@ -250,12 +250,22 @@ Upload your PGP public key only to <code
below do not choose one. If a profile is needed, append it to all the maven
commands.</p>
<p>e.g. <code>mvn clean install -Prelease-2.6</code></p>
<h2 id="prepare">Prepare</h2>
+<h3 id="check-everything-in">Check everything in</h3>
+<p>This and other other commands assume that <code>origin</code> maps
+to <code>https://git-wip-us.apache.org/repos/asf/incubator-slider.git</code>;
+you can check this with <code>git remote -v</code></p>
+<ul>
+<li>
<p>Verify that there's nothing not yet checked in</p>
<div class="codehilite"><pre><span class="n">git</span> <span
class="n">status</span>
</pre></div>
+</li>
+</ul>
<p>Everything must be checked in at this point.</p>
+<ul>
+<li>
<p>Sync up with the ASF repo. You do not want to release the wrong code.</p>
<div class="codehilite"><pre><span class="n">git</span> <span
class="n">checkout</span> <span class="n">develop</span>
<span class="n">git</span> <span class="n">pull</span> <span
class="n">origin</span>
@@ -263,34 +273,29 @@ below do not choose one. If a profile is
</pre></div>
-<p><strong>Step #1:</strong> Create a JIRA for the release, estimate 3h
-(so you don't try to skip the tests)</p>
+</li>
+</ul>
+<h3 id="start-the-jira">Start the JIRA</h3>
+<p>Create a JIRA for the release, estimate 1d</p>
<div class="codehilite"><pre><span class="n">export</span> <span
class="n">SLIDER_RELEASE_JIRA</span><span class="p">=</span><span
class="n">SLIDER</span><span class="o">-</span>544
</pre></div>
-<p><strong>Step #4:</strong> If they are not what you want, set the version
numbers using <a href="http://mojo.codehaus.org/versions-maven-plugin/">the
maven
-versions plugin</a></p>
-<div class="codehilite"><pre><span class="n">export</span> <span
class="n">SLIDER_RELEASE</span><span class="p">=</span>0<span
class="p">.</span>60<span class="p">.</span>0<span class="o">-</span><span
class="n">incubating</span><span class="o">-</span><span
class="n">SNAPSHOT</span>
-
-<span class="n">mvn</span> <span class="n">versions</span><span
class="p">:</span><span class="n">set</span> <span class="o">-</span><span
class="n">DnewVersion</span><span class="p">=</span>$<span
class="n">SLIDER_RELEASE</span>
-</pre></div>
-
-
-<p><strong>Step #5:</strong> Commit the changed POM files</p>
-<div class="codehilite"><pre><span class="n">git</span> <span
class="n">status</span>
-<span class="n">git</span> <span class="n">add</span> <span
class="o">--</span><span class="n">all</span>
-<span class="n">git</span> <span class="n">commit</span> <span
class="o">-</span><span class="n">m</span> "$<span
class="n">SLIDER_RELEASE_JIRA</span> <span class="n">updating</span> <span
class="n">release</span> <span class="n">POMs</span> <span class="k">for</span>
$<span class="n">SLIDER_RELEASE</span>"
-</pre></div>
+<p>This seems pessimistic, but there may be surprises.</p>
+<h3 id="choose-your-versions">Choose your versions</h3>
+<p>Choose the version number for the release</p>
+<p>Example:</p>
+<div class="codehilite"><pre>0<span class="p">.</span>61<span
class="p">.</span>0<span class="o">-</span><span class="n">incubating</span>
+0<span class="p">.</span>62<span class="p">.</span>0<span
class="o">-</span><span class="n">incubating</span><span
class="o">-</span><span class="n">SNAPSHOT</span>
-<p><strong>Step #3:</strong> Create or check out a release branch</p>
-<div class="codehilite"><pre><span class="n">git</span> <span
class="n">checkout</span> <span class="o">-</span><span class="n">b</span>
<span class="n">branches</span><span class="o">/</span><span
class="n">branch</span><span class="o">-</span>0<span class="p">.</span>6
-<span class="n">git</span> <span class="n">push</span> <span
class="n">origin</span> <span class="n">branches</span><span
class="o">/</span><span class="n">branch</span><span class="o">-</span>0<span
class="p">.</span>6
+<span class="n">export</span> <span class="n">SLIDER_RELEASE</span><span
class="p">=</span>0<span class="p">.</span>61<span class="p">.</span>0<span
class="o">-</span><span class="n">incubating</span>
+<span class="n">export</span> <span class="n">SLIDER_DEV</span><span
class="p">=</span>0<span class="p">.</span>62<span class="p">.</span>0<span
class="o">-</span><span class="n">incubating</span><span
class="o">-</span><span class="n">SNAPSHOT</span>
</pre></div>
-<p><strong>Step #6:</strong> Do a final test run to make sure nothing is
broken</p>
+<h3 id="test-that-everything-works">Test that everything works</h3>
+<p>Do a final test run to make sure nothing is broken</p>
<p>In the <code>slider</code> directory, run:</p>
<div class="codehilite"><pre><span class="n">mvn</span> <span
class="n">clean</span> <span class="n">install</span> <span
class="o">-</span><span class="n">DskipTests</span>
</pre></div>
@@ -314,104 +319,33 @@ This stops functional tests failing beca
the tests time out.</p>
<p>As the test run takes 60+ minutes, now is a good time to consider
finalizing the release notes.</p>
-<h2 id="build-the-release-notes">Build the release notes</h2>
-<p>Create a a one-line plain text release note for commits and tags
-and a multi-line markdown release note which will be used for artifacts.</p>
-<div class="codehilite"><pre><span class="n">Release</span> <span
class="n">against</span> <span class="n">hadoop</span> 2<span
class="p">.</span>6<span class="p">.</span>0
-</pre></div>
-
-
-<p>The multi-line release notes should go into the slider SVN repo under
-<code>site/trunk/content/release_notes</code>.</p>
-<p>Commit the documentation changes:</p>
-<div class="codehilite"><pre><span class="n">svn</span> <span
class="n">commit</span> <span class="o">-</span><span class="n">m</span>
"$<span class="n">SLIDER_RELEASE_JIRA</span> <span
class="n">updating</span> <span class="n">release</span> <span
class="n">notes</span> <span class="k">for</span> <span
class="n">slider</span><span class="o">-</span>$<span
class="n">SLIDER_RELEASE</span>"
+<h3 id="create-a-release-branch">Create a release branch</h3>
+<p>Create or check out a release branch,</p>
+<p>Example of creation then push to the origin</p>
+<div class="codehilite"><pre><span class="n">git</span> <span
class="n">checkout</span> <span class="o">-</span><span class="n">b</span>
<span class="n">branches</span><span class="o">/</span><span
class="n">branch</span><span class="o">-</span>0<span class="p">.</span>6
+<span class="n">git</span> <span class="n">push</span> <span
class="n">origin</span> <span class="n">branches</span><span
class="o">/</span><span class="n">branch</span><span class="o">-</span>0<span
class="p">.</span>6
</pre></div>
-<p><strong>Step #10:</strong> Get back to the develop branch</p>
+<p>This branch is where all the release work will take place. That can include
patching and cherry picking from the development branch.</p>
+<h3 id="update-the-version-numbers-on-the-main-branch">Update the version
numbers on the main branch</h3>
+<p>Get back to the develop branch and patch its versions</p>
<div class="codehilite"><pre><span class="n">git</span> <span
class="n">checkout</span> <span class="n">develop</span>
-</pre></div>
-
-
-<p>You will now be back on the <code>develop</code> branch.</p>
-<p><strong>Step #11:</strong> update maven versions</p>
-<p>Switch back to <code>develop</code> and update its version number past
-the release number</p>
-<div class="codehilite"><pre><span class="n">export</span> <span
class="n">SLIDER_DEV</span><span class="p">=</span>0<span
class="p">.</span>61<span class="p">.</span>0<span class="o">-</span><span
class="n">incubating</span><span class="o">-</span><span
class="n">SNAPSHOT</span>
<span class="n">mvn</span> <span class="n">versions</span><span
class="p">:</span><span class="n">set</span> <span class="o">-</span><span
class="n">DnewVersion</span><span class="p">=</span>$<span
class="n">SLIDER_DEV</span>
<span class="n">git</span> <span class="n">commit</span> <span
class="o">-</span><span class="n">a</span> <span class="o">-</span><span
class="n">m</span> "$<span class="n">SLIDER_RELEASE_JIRA</span> <span
class="n">updating</span> <span class="n">development</span> <span
class="n">POMs</span> <span class="n">to</span> $<span
class="n">SLIDER_DEV</span>"
+<span class="n">git</span> <span class="n">push</span> <span
class="n">origin</span>
</pre></div>
-<p><strong>Step #12:</strong> Push the release and develop branches to github
</p>
-<div class="codehilite"><pre><span class="n">git</span> <span
class="n">push</span> <span class="n">origin</span> <span
class="n">develop</span> <span class="n">releases</span><span
class="o">/</span><span class="n">slider</span><span class="o">-</span>0<span
class="p">.</span>60
-</pre></div>
-
-
-<p>(assuming that <code>origin</code> maps to
<code>https://git-wip-us.apache.org/repos/asf/incubator-slider.git</code>;
- you can check this with <code>git remote -v</code></p>
-<h2 id="wzxhzdk41wzxhzdk42phase-ii-publish-to-the-asf"><a
name="phase2"></a>Phase - II: publish to the ASF</h2>
-<p>This phase of the process creates the artifacts for the ASF.
-This is done in a separate directory to ensure that nothing accidentally gets
in.</p>
-<p>Preamble: set up the RC Version </p>
-<div class="codehilite"><pre><span class="n">export</span> <span
class="n">RELEASE_RC</span><span class="p">=</span><span class="n">rc0</span>
-</pre></div>
-
-
-<p><strong>Step 1</strong></p>
-<p>Get a clean git clone in its own directory.</p>
-<div class="codehilite"><pre><span class="n">mkdir</span> <span
class="n">release</span>
-<span class="n">cd</span> <span class="n">release</span>
-<span class="n">git</span> <span class="n">clone</span> <span
class="n">https</span><span class="p">:</span><span class="o">//</span><span
class="n">git</span><span class="o">-</span><span class="n">wip</span><span
class="o">-</span><span class="n">us</span><span class="p">.</span><span
class="n">apache</span><span class="p">.</span><span class="n">org</span><span
class="o">/</span><span class="n">repos</span><span class="o">/</span><span
class="n">asf</span><span class="o">/</span><span
class="n">incubator</span><span class="o">-</span><span
class="n">slider</span><span class="p">.</span><span class="n">git</span> <span
class="n">slider</span><span class="o">-</span>$<span
class="n">SLIDER_RELEASE</span>
-<span class="n">cd</span> <span class="n">slider</span><span
class="o">-</span>$<span class="n">SLIDER_RELEASE</span>
-</pre></div>
-
-
-<p><strong>Step 2</strong></p>
-<p>Ensure you are in the <em>master</em> branch and it's clean. Beware that
the git clean command will remove any unknown files to Git in your current
repository.</p>
-<div class="codehilite"><pre><span class="n">git</span> <span
class="n">checkout</span> <span class="n">releases</span><span
class="o">/</span><span class="n">slider</span><span class="o">-</span>0<span
class="p">.</span>60
-<span class="n">git</span> <span class="n">pull</span> <span
class="n">origin</span>
-<span class="n">git</span> <span class="n">clean</span> <span
class="o">-</span><span class="n">fxd</span>
-</pre></div>
-
-
-<h2 id="publish-via-svn">Publish via SVN (?)</h2>
-<p>Publish the release as below:</p>
-<div class="codehilite"><pre><span class="n">svn</span> <span
class="n">co</span> <span class="n">https</span><span class="p">:</span><span
class="o">//</span><span class="n">dist</span><span class="p">.</span><span
class="n">apache</span><span class="p">.</span><span class="n">org</span><span
class="o">/</span><span class="n">repos</span><span class="o">/</span><span
class="n">dist</span><span class="o">/</span><span
class="n">release</span><span class="o">/</span><span
class="n">incubator</span><span class="o">/</span><span class="n">slider</span>
<span class="n">slider</span>
-
-<span class="n">cd</span> <span class="n">slider</span>
-</pre></div>
-
-
-<p>Make sure your PGP keys is in the KEYS file. The instructions to add a key
-are at the top of the file</p>
-<p>Then...</p>
-<div class="codehilite"><pre><span class="n">mkdir</span> $<span
class="n">SLIDER_RELEASE</span> $<span class="n">SLIDER_RELEASE</span><span
class="o">/</span><span class="n">src</span>
-<span class="n">cd</span> $<span class="n">SLIDER_RELEASE</span><span
class="o">/</span><span class="n">src</span>
-<span class="n">scp</span> <span class="o">~/</span><span
class="n">public_html</span><span class="o">/</span>$<span
class="n">SLIDER_RELEASE</span><span class="o">-</span>$<span
class="n">RELEASE_RC</span><span class="o">/*</span> <span class="p">.</span>
-<span class="n">cd</span> <span class="p">..</span>
-<span class="n">svn</span> <span class="n">add</span> $<span
class="n">SLIDER_RELEASE</span>
-<span class="n">svn</span> <span class="n">commit</span> <span
class="o">-</span><span class="n">m</span> "<span
class="n">SLIDER_RELEASE_JIRA</span> <span class="n">Committing</span> <span
class="n">Release</span> $<span class="n">SLIDER_RELEASE</span>"
-</pre></div>
-
-
-<p><strong>Step 14</strong></p>
-<p>Create the release tag:</p>
-<div class="codehilite"><pre><span class="n">On</span> <span
class="n">branch</span> <span class="n">master</span>
-<span class="n">git</span> <span class="n">tag</span> <span
class="o">-</span><span class="n">a</span> $<span
class="n">SLIDER_RELEASE</span> <span class="o">-</span><span
class="n">m</span> <span class="s">'Slider $SLIDER_RELEASE'</span>
-<span class="n">git</span> <span class="n">push</span> <span
class="o">--</span><span class="n">tags</span> <span class="n">origin</span>
-</pre></div>
-
-
-<p><strong>Step 15</strong></p>
-<p>Update the Slider website as needed. Most of the documents would have been
updated by now to reflect the released version. <em>The remaining changes
should really be modifying the references to the latest release to the new
version.</em></p>
-<p>The download details for the latest release needs to be updated after
mirrors are updated in <strong>Step 12</strong>. </p>
-<p>Verify the download links at <a
href="http://slider.incubator.apache.org">Slider Page</a>.</p>
<h1 id="automated-releases-via-maven">Automated releases via maven</h1>
<p>The Slider project uses Maven to automatically publish all the slider
artifacts âsource and binaryâ to the ASF repositories</p>
<p>Core sequence
1. Dry Run
-1. Deploy to staging</p>
+1. Deploy to staging
+1. Publish the real release
+1. Get the votes in</p>
+<p>If the vote fails: fix the issues then repeat</p>
+<p>Recommended Reading</p>
<ul>
<li><a href="http://www.apache.org/dev/release.html">ASF release
guidelines</a></li>
<li><a
href="http://maven.apache.org/maven-release/maven-release-plugin/index.html">Maven
release plugin</a></li>
@@ -458,13 +392,6 @@ anyway.</p>
</pre></div>
-<h3 id="choose-your-versions">Choose your versions</h3>
-<p>Choose the version numbers for the release and for afterwards.</p>
-<div class="codehilite"><pre>0<span class="p">.</span>61<span
class="p">.</span>0<span class="o">-</span><span class="n">incubating</span>
-0<span class="p">.</span>62<span class="p">.</span>0<span
class="o">-</span><span class="n">incubating</span><span
class="o">-</span><span class="n">SNAPSHOT</span>
-</pre></div>
-
-
<h2 id="git-preparation">Git preparation</h2>
<p>The maven automated release adds its own git tags and pushes things up to a
branch. All work must be done on a branch created for the release process, so
as to not interfere with the rest of the development. You are likely to end up
rolling back the branch, force-pushing changes &c, so cannot actively share
the branch with anyone.</p>
<h3 id="clone-the-repo">Clone the repo.</h3>
@@ -476,6 +403,7 @@ anyway.</p>
<h3 id="check-out-the-branch-you-plan-to-release-on-tag-it">Check out the
branch you plan to release on; tag it</h3>
+<p>The tag is so that if things go wrong you know what you have to roll back
to.</p>
<div class="codehilite"><pre><span class="n">cd</span> <span
class="n">incubator</span><span class="o">-</span><span class="n">slider</span>
<span class="n">git</span> <span class="n">checkout</span> <span
class="o">-</span><span class="n">t</span> <span class="n">origin</span><span
class="o">/</span><span class="n">branches</span><span class="o">/</span><span
class="n">branch</span><span class="o">-</span>0<span class="p">.</span>6
</pre></div>
@@ -571,47 +499,37 @@ with your ASF username & LDAP passwo
<li>Get the URL of the closed staging repository. This is needed for the next
step âthe votes.</li>
</ol>
<h2 id="get-the-votes-in">Get the Votes In</h2>
-<h3 id="call-for-a-slider-vote">Call for a slider vote</h3>
-<p>Call for a release VOTE to the dev mailing list
(<code>[email protected]</code>).</p>
-<p>To build the URLs, echo them then verify in your browser that they are
present</p>
-<div class="codehilite"><pre><span class="n">echo</span> <span
class="p">[</span><span class="n">VOTE</span><span class="p">]</span> <span
class="n">Apache</span> <span class="n">Slider</span> <span
class="n">Incubating</span> <span class="n">Release</span> $<span
class="n">SLIDER_RELEASE</span>
-
-<span class="n">echo</span> "<span class="n">This</span> <span
class="n">is</span> <span class="n">a</span> <span class="n">call</span> <span
class="k">for</span> <span class="n">a</span> <span class="n">vote</span> <span
class="n">on</span> <span class="n">Apache</span> <span class="n">Slider</span>
$<span class="n">SLIDER_RELEASE</span> <span class="n">release</span>"
-
-<span class="n">echo</span> "<span class="n">Artifacts</span> <span
class="n">at</span> <span class="n">http</span><span class="p">:</span><span
class="o">//</span><span class="n">people</span><span class="p">.</span><span
class="n">apache</span><span class="p">.</span><span class="n">org</span><span
class="o">/~</span>$<span class="n">ASF_USER</span><span
class="o">/</span><span class="n">slider</span><span class="o">/</span><span
class="n">slider</span><span class="o">-</span><span
class="n">release</span><span class="o">-</span>$<span
class="n">SLIDER_RELEASE</span><span class="o">-</span>$<span
class="n">RELEASE_RC</span>"
+<h3 id="set-up-your-env-vars-for-email-templates">Set up your env vars for
email templates</h3>
+<p>set up the environment with the git release tag, URL to the staging
repository, and your ASF username:</p>
+<div class="codehilite"><pre><span class="n">export</span> <span
class="n">RELEASE_TAG</span><span class="p">=</span>
+<span class="n">export</span> <span class="n">STAGING_REPO</span><span
class="p">=</span>
+<span class="n">export</span> <span class="n">ASF_USER</span><span
class="p">=</span>
+</pre></div>
-<span class="n">echo</span> "<span class="n">Git</span> <span
class="n">source</span> <span class="n">tag</span><span class="p">:</span>
<span class="n">https</span><span class="p">:</span><span
class="o">//</span><span class="n">git</span><span class="o">-</span><span
class="n">wip</span><span class="o">-</span><span class="n">us</span><span
class="p">.</span><span class="n">apache</span><span class="p">.</span><span
class="n">org</span><span class="o">/</span><span class="n">repos</span><span
class="o">/</span><span class="n">asf</span>?<span class="n">p</span><span
class="p">=</span><span class="n">incubator</span><span class="o">-</span><span
class="n">slider</span><span class="p">.</span><span class="n">git</span><span
class="p">;</span><span class="n">a</span><span class="p">=</span><span
class="n">shortlog</span><span class="p">;</span><span class="n">h</span><span
class="p">=</span><span class="n">refs</span><span class="o">/</span><span
class="n">tags</span><span class
="o">/</span><span class="n">release</span><span class="o">-</span>$<span
class="n">SLIDER_RELEASE</span><span class="o">-</span>$<span
class="n">RELEASE_RC</span>"
-<span class="n">echo</span> "<span class="n">PGP</span> <span
class="n">keys</span> <span class="n">at</span> <span
class="n">http</span><span class="p">:</span><span class="o">//</span><span
class="n">pgp</span><span class="p">.</span><span class="n">mit</span><span
class="p">.</span><span class="n">edu</span><span class="p">:</span>11371<span
class="o">/</span><span class="n">pks</span><span class="o">/</span><span
class="n">lookup</span>?<span class="n">op</span><span class="p">=</span><span
class="n">vindex</span><span class="o">&</span><span
class="n">search</span><span class="p">=</span>$<span
class="n">ASF_USER</span><span class="p">@</span><span
class="n">apache</span><span class="p">.</span><span class="n">org</span>"
+<p>example</p>
+<div class="codehilite"><pre><span class="n">export</span> <span
class="n">RELEASE_TAG</span><span class="p">=</span>64<span
class="n">a8bac068e6801748fb973dbfb590bc62c60935</span>
+<span class="n">export</span> <span class="n">STAGING_REPO</span><span
class="p">=</span><span class="n">https</span><span class="p">:</span><span
class="o">//</span><span class="n">repository</span><span
class="p">.</span><span class="n">apache</span><span class="p">.</span><span
class="n">org</span><span class="o">/</span><span class="n">content</span><span
class="o">/</span><span class="n">repositories</span><span
class="o">/</span><span class="n">orgapacheslider</span><span
class="o">-</span>1003<span class="o">/</span>
+<span class="n">export</span> <span class="n">ASF_USER</span><span
class="p">=</span><span class="n">stevel</span>
</pre></div>
-<p>Sample:</p>
-<p>```</p>
-<p>Title: [VOTE] Apache Slider Incubating Release $SLIDER_RELEASE
$RELEASE_RC</p>
-<p>Hello folks,</p>
-<p>This is a call for a vote on Apache Slider $SLIDER_RELEASE release.
-Thanks to everyone who have contributed to this release.</p>
-<p>Git source checksum d3fd75007a209cf6439dde99c35a46a2632ca79d</p>
-<p>tag:
-https://git-wip-us.apache.org/repos/asf?p=incubator-slider.git;a=tag;h=refs/tags/slider-0.61.0</p>
-<p>Staging site:</p>
-<p>https://repository.apache.org/content/repositories/orgapacheslider-1002/org/apache/slider/</p>
-<p>The single archive is in </p>
-<p>https://repository.apache.org/content/repositories/orgapacheslider-1002/org/apache/slider/slider-assembly/0.61.0/</p>
-<p>PGP release keys (signed as stevel)
-http://pgp.mit.edu:11371/pks/lookup?op=vindex&[email protected]</p>
-<p>The issues fixed in this release are listed at at:
-https://issues.apache.org/jira/browse/SLIDER/fixforversion/12329034</p>
-<p>This is a source+binary release.</p>
-<p>Build instructions at:
http://slider.incubator.apache.org/developing/building.html </p>
+<h3 id="call-for-a-slider-vote">Call for a slider vote</h3>
+<p>Call for a release VOTE to the dev mailing list
(<code>[email protected]</code>).</p>
+<p>To build the URLs, echo them then verify in your browser that they are
present</p>
+<p>echo "[VOTE] Apache Slider Incubating Release $SLIDER_RELEASE"</p>
+<p>echo "This is a call for a vote on Apache Slider $SLIDER_RELEASE release"
+echo "This is a source+binary release."
+echo "Artifacts at $STAGING_REPO"
+echo "Git source tag:
https://git-wip-us.apache.org/repos/asf?p=incubator-slider.git;a=commit;h=$RELEASE_TAG
"
+echo "PGP keys at
http://pgp.mit.edu:11371/pks/lookup?op=vindex&[email protected]"</p>
+<p>Build instructions at:
http://slider.incubator.apache.org/developing/building.html</p>
<p>Vote will be open for 72 hours </p>
-<p>[ ] +1 approve
-[ ] +0 no opinion
-[ ] -1 disapprove (and reason why)</p>
-<p>```</p>
+<p>[ ] +1 approve
+[ ] +0 no opinion
+[ ] -1 disapprove (and reason why) </p>
<ul>
-<li>CHECK ALL THE URLS FIRST *</li>
+<li>CHECK ALL THE URLS *</li>
</ul>
<h3 id="call-for-an-incubator-vote">Call for an incubator vote</h3>
<p>If the VOTE passes, call for VOTE from IPMC. Include the VOTE and RESULT
thread from the dev alias.
@@ -630,7 +548,62 @@ If that VOTE passes with the IPMC send a
</pre></div>
-<h2 id="publishing-the-release">Publishing the release</h2>
+<h2 id="publishing-the-nexus-staging-repository">Publishing the Nexus staging
repository</h2>
+<p>Once âand only onceâ the incubator vote is successful, you may release
the nexus-staged artifacts.</p>
+<ol>
+<li>Log in to <a
href="https://repository.apache.org/index.html#stagingRepositories">the ASF
Nexus server</a></li>
+<li>Locate and select the staged Slider repository</li>
+<li>In the toolbar above, press the release button</li>
+</ol>
+<h2 id="publishing-the-source-and-binary-tarzip-files">Publishing the source
and binary tar/zip files</h2>
+<p>The ASF distribution system mirrors the source and binary files across the
all apache mirror sites. This the standard way which the archives are
distributed.</p>
+<p>Publish the release as below:</p>
+<h3 id="grab-the-released-artifacts-from-nexus">Grab the released artifacts
from Nexus</h3>
+<ol>
+<li>
+<p>Create a temp directory somewhere</p>
+<div class="codehilite"><pre><span class="n">mkdir</span> <span
class="n">temp</span>
+<span class="n">cd</span> <span class="n">temp</span>
+</pre></div>
+
+
+<ol>
+<li>
+<p>create a directory, <code>artifacts</code></p>
+<p>mkdir artifacts
+cd artifacts</p>
+</li>
+</ol>
+</li>
+<li>
+<p>Under <code>org/apache/slider/slider-assembly/$SLIDER_RELEASE</code>
download all but the POM files (or download everything ) into
<code>artifacts</code></p>
+</li>
+<li>Repeat for the source files
<code>org/apache/slider/slider/$SLIDER_RELEASE</code></li>
+</ol>
+<h3 id="check-out-the-distribution-dir-somewhere">Check out the distribution
dir somewhere</h3>
+<div class="codehilite"><pre><span class="n">svn</span> <span
class="n">co</span> <span class="n">https</span><span class="p">:</span><span
class="o">//</span><span class="n">dist</span><span class="p">.</span><span
class="n">apache</span><span class="p">.</span><span class="n">org</span><span
class="o">/</span><span class="n">repos</span><span class="o">/</span><span
class="n">dist</span><span class="o">/</span><span
class="n">release</span><span class="o">/</span><span
class="n">incubator</span><span class="o">/</span><span class="n">slider</span>
<span class="n">slider</span>
+
+<span class="n">cd</span> <span class="n">slider</span>
+</pre></div>
+
+
+<p>Make sure your PGP keys is in the <code>KEYS</code> file. The instructions
to add a key
+are at the top of that file</p>
+<p>Then...</p>
+<div class="codehilite"><pre><span class="n">mkdir</span> $<span
class="n">SLIDER_RELEASE</span> $<span class="n">SLIDER_RELEASE</span><span
class="o">/</span><span class="n">src</span>
+<span class="n">cd</span> $<span class="n">SLIDER_RELEASE</span><span
class="o">/</span><span class="n">src</span>
+<span class="n">scp</span> <span class="o">~/</span><span
class="n">public_html</span><span class="o">/</span>$<span
class="n">SLIDER_RELEASE</span><span class="o">-</span>$<span
class="n">RELEASE_RC</span><span class="o">/*</span> <span class="p">.</span>
+<span class="n">cd</span> <span class="p">..</span>
+<span class="n">svn</span> <span class="n">add</span> $<span
class="n">SLIDER_RELEASE</span>
+<span class="n">svn</span> <span class="n">commit</span> <span
class="o">-</span><span class="n">m</span> "<span
class="n">SLIDER_RELEASE_JIRA</span> <span class="n">Committing</span> <span
class="n">Release</span> $<span class="n">SLIDER_RELEASE</span>"
+</pre></div>
+
+
+<p><strong>Step 14</strong></p>
+<h3 id="web-site-updates">Web site updates</h3>
+<p>Update the Slider website as needed. Most of the documents would have been
updated by now to reflect the released version. <em>The remaining changes
should really be modifying the references to the latest release to the new
version.</em></p>
+<p>The download details for the latest release needs to be updated after
mirrors are updated in . </p>
+<p>Verify the download links at <a
href="http://slider.incubator.apache.org">Slider Page</a>.</p>
<h2 id="announcing">Announcing</h2>
<p>Send an announcement:</p>
<p>The bits published in <strong>Step 13</strong> may take up to 24 hours to
replicate to the mirrors.</p>
@@ -655,6 +628,19 @@ To send the message to announcement@apac
</pre></div>
+<h3 id="push-the-release-to-originmaster-todo">Push the release to
origin/master âTODO</h3>
+<p><strong> TODO </strong></p>
+<p>Goal: get the master branch updated with this release, with any changes in
the release taking priority over the versions in /master. </p>
+<p>This is where gitflow breaks down. It may be better to have tags like
<code>latest_stable</code> and <code>latest_development</code> and just move
them along. </p>
+<p>Otherwise:
+In the branch for the release, go to the tag create for the release by maven.
This represents the code released, including the version numbering of the
release artifact (not the HEAD of the branch, which has the incremented one)</p>
+<div class="codehilite"><pre><span class="n">git</span> <span
class="n">tag</span> <span class="o">-</span><span class="n">a</span> $<span
class="n">SLIDER_RELEASE</span> <span class="o">-</span><span
class="n">m</span> <span class="s">'Slider $SLIDER_RELEASE'</span>
$<span class="n">RELEASE_TAG</span>
+<span class="n">git</span> <span class="n">push</span> <span
class="n">origin</span> $<span class="n">SLIDER_RELEASE</span>
+<span class="n">git</span> <span class="n">checkout</span> <span
class="n">master</span>
+<span class="n">git</span> <span class="n">merge</span> <span
class="n">branch</span> <span class="o">-</span><span class="n">X</span> $<span
class="n">SLIDER_RELEASE</span>
+</pre></div>
+
+
<h2 id="finish-the-jira">Finish the JIRA</h2>
<p>Log the time, close the issue. This should normally be the end of a
sprint âso wrap that up too.</p>