Author: paulmerlin
Date: Tue Jul 21 12:30:06 2015
New Revision: 1692097
URL: http://svn.apache.org/r1692097
Log:
zest: update release process documentation
Modified:
zest/site/content/java/develop/releasing-apache.html
Modified: zest/site/content/java/develop/releasing-apache.html
URL:
http://svn.apache.org/viewvc/zest/site/content/java/develop/releasing-apache.html?rev=1692097&r1=1692096&r2=1692097&view=diff
==============================================================================
--- zest/site/content/java/develop/releasing-apache.html (original)
+++ zest/site/content/java/develop/releasing-apache.html Tue Jul 21 12:30:06
2015
@@ -79,7 +79,7 @@ svn checkout https://dist.apache.org/rep
âââ zest-java # Apache Zest⢠(Java Edition) source
âââ zest-svn # https://zest.apache.org/ website
âââ zest-dist-dev # Releases candidate distributions
- âââ zest-dist-release # Releases distributions</pre></div><div
class="section" title="Build Apache Zest⢠(Java Edition)"><div
class="titlepage"><div><div><h5 class="title"><a
id="_build_apache_zest_java_edition"></a>Build Apache Zest⢠(Java
Edition)</h5></div></div></div><p>Ensure you can test, build and sign Zest,
including artifact signing, see the <a class="link" href="build-system.html"
title="Zest⢠Build System">Build System</a> tutorial.</p></div><div
class="section" title="Install Jekyll"><div class="titlepage"><div><div><h5
class="title"><a id="_install_jekyll"></a>Install
Jekyll</h5></div></div></div><p>Moreover, you will need to have a valid <a
class="ulink" href="http://jekyllrb.com/" target="_top">Jekyll</a> installation
as the Apache Zest⢠<a class="ulink" href="https://zest.apache.org/"
target="_top">website</a> is baked with it.</p></div><div class="section"
title="Setup git flow"><div class="titlepage"><div><div><h5 class="tit
le"><a id="_setup_git_flow"></a>Setup git flow</h5></div></div></div><p><code
class="literal">git-flow</code> is a git extension that add git commands to
easily use the git flow branching model the Apache Zest⢠project follows.
+ âââ zest-dist-release # Releases distributions</pre></div><div
class="section" title="Build Apache Zest⢠(Java Edition)"><div
class="titlepage"><div><div><h5 class="title"><a
id="_build_apache_zest_java_edition"></a>Build Apache Zest⢠(Java
Edition)</h5></div></div></div><p>Ensure you can test, build and sign Zest,
including artifact signing, see the <a class="link" href="build-system.html"
title="Zest⢠Build System">Build System</a> tutorial.</p></div><div
class="section" title="Install Jekyll"><div class="titlepage"><div><div><h5
class="title"><a id="_install_jekyll"></a>Install
Jekyll</h5></div></div></div><p>Moreover, you will need to have a valid <a
class="ulink" href="http://jekyllrb.com/" target="_top">Jekyll</a> installation
as the Apache Zest⢠<a class="ulink" href="https://zest.apache.org/"
target="_top">website</a> is generated using it.</p></div><div class="section"
title="Setup git flow"><div class="titlepage"><div><div><h5 class
="title"><a id="_setup_git_flow"></a>Setup git
flow</h5></div></div></div><p><code class="literal">git-flow</code> is a git
extension that add git commands to easily use the git flow branching model the
Apache Zest⢠project follows.
See the <a class="ulink"
href="https://github.com/nvie/gitflow/wiki/Installation"
target="_top">installation instructions</a>.</p></div><div class="section"
title="Setup git signing"><div class="titlepage"><div><div><h5 class="title"><a
id="_setup_git_signing"></a>Setup git signing</h5></div></div></div><p>Ensure
you can sign git tags.</p><pre class="programlisting brush: shell">git config
--global user.signingkey <YOUR-PGP-ID></pre><p>See the <a class="ulink"
href="https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work"
target="_top">Git Tools - Signing Your Work</a> section of the Git
book.</p></div><div class="section" title="Setup Apache Nexus credentials"><div
class="titlepage"><div><div><h5 class="title"><a
id="_setup_apache_nexus_credentials"></a>Setup Apache Nexus
credentials</h5></div></div></div><p>See the Apache <a class="ulink"
href="https://www.apache.org/dev/publishing-maven-artifacts.html"
target="_top">Publishing Maven Artifacts</a> guide and the Apache Zes
t⢠(Java Edition) <a class="link" href="build-system.html" title="Zestâ¢
Build System">Build System</a> tutorial.</p></div><div class="section"
title="Update the KEYS file if needed."><div class="titlepage"><div><div><h5
class="title"><a
id="_update_the_literal_keys_literal_file_if_needed"></a>Update the <code
class="literal">KEYS</code> file if needed.</h5></div></div></div><p>The
reference <code class="literal">KEYS</code> file can be found at the <code
class="literal">zest-java</code> repositoryâs root.</p><p>Diff the ones
present in the <code class="literal">dev</code> and <code
class="literal">release</code> distribution areas:</p><pre
class="programlisting brush: shell">diff zest-java/KEYS zest-dist-dev/KEYS
diff zest-java/KEYS zest-dist-release/KEYS</pre><p>And update them if
needed:</p><pre class="programlisting brush: shell">cp zest-java/KEYS
zest-dist-dev/KEYS
cp zest-java/KEYS zest-dist-release/KEYS
@@ -96,15 +96,19 @@ fixing
marking them as <code class="literal">INVALID</code> or <code
class="literal">WONTFIX</code>
</li><li class="listitem">
changing their fix version to another unreleased version
-</li></ul></div><p>See the <a class="ulink"
href="https://issues.apache.org/jira/browse/ZEST" target="_top">ZEST</a>
project on JIRA.</p></div><div class="section" title="Prepare Release
Notes"><div class="titlepage"><div><div><h5 class="title"><a
id="_prepare_release_notes"></a>Prepare Release
Notes</h5></div></div></div><p>Apache Zest⢠release notes are generated from
JIRA issues.</p><p>Open the target Zest⢠versionâs release notes in <a
class="ulink"
href="https://issues.apache.org/jira/browse/ZEST/?selectedTab=com.atlassian.jira.jira-projects-plugin:roadmap-panel"
target="_top">JIRA</a> and review them.</p><p>JIRA can produces release notes
as HTML or plain-text.
-We will use plain-text release notes in e-mails and will need to convert the
HTML releases notes to Asciidoc for use in the website.</p><p>Prepare the two
following files:</p><div class="itemizedlist"><ul class="itemizedlist"><li
class="listitem">
-<code
class="literal">apache-zest-java-<RELEASE-VERSION>-release-notes.txt</code>
-</li><li class="listitem">
-<code
class="literal">apache-zest-java-<RELEASE-VERSION>-release-notes.adoc</code>
-</li></ul></div><p>We will use them later.</p></div><div class="section"
title="Create a release candidate branch"><div class="titlepage"><div><div><h5
class="title"><a id="_create_a_release_candidate_branch"></a>Create a release
candidate branch</h5></div></div></div><p>We use <code
class="literal"><RELEASE-VERSION>-RC#</code> where <code
class="literal">RELEASE-VERSION</code> is the target release version and <code
class="literal">RC#</code> for Release Candidate and an incremental number in
case the release process has to be done several times.</p><pre
class="programlisting brush: shell">git flow release start
<RELEASE-VERSION>-RC#</pre><p>This will eventually generates a <code
class="literal"><RELEASE-VERSION>-RC#</code> tag that we will rename to
<code class="literal"><RELEASE-VERSION></code> if the vote passes, see
below.</p></div><div class="section" title="Build and audit distributions"><div
class="titlepage"><div><div><h5 class="title"><a id="_build_
and_audit_distributions"></a>Build and audit
distributions</h5></div></div></div><p>Make a complete build:</p><pre
class="programlisting brush: shell">./gradlew -Dversion=<RELEASE-VERSION>
clean check buildAll</pre><p>Review the release distributions in <code
class="literal">build/distributions</code>.</p><p>If any, make the required
changes, commit them and iterate.</p></div><div class="section" title="Close
the release candidate branch"><div class="titlepage"><div><div><h5
class="title"><a id="_close_the_release_candidate_branch"></a>Close the release
candidate branch</h5></div></div></div><p>Once you are satisfied with the
produced artifacts, close the release candidate branch:</p><pre
class="programlisting brush: shell">git flow release finish
<RELEASE-VERSION>-RC#</pre></div><div class="section" title="Checkout the
release candidate tag"><div class="titlepage"><div><div><h5 class="title"><a
id="_checkout_the_release_candidate_tag"></a>Checkout the release candidate
tag</h5></div></div></div><p>To build the release candidate bits, we need to
checkout the release candidate tag, that will eventually be promoted as a
signed release tag, because the Apache Zest⢠build system generates
versionning information based on git metadata.</p><pre class="programlisting
brush: shell">git checkout <RELEASE-VERSION>-RC#</pre></div><div
class="section" title="Build artifacts and distributions"><div
class="titlepage"><div><div><h5 class="title"><a
id="_build_artifacts_and_distributions"></a>Build artifacts and
distributions</h5></div></div></div><pre class="programlisting brush:
shell">./gradlew -Dversion=<RELEASE-VERSION> clean check
buildAll</pre></div><div class="section" title="Stage maven artifacts"><div
class="titlepage"><div><div><h5 class="title"><a
id="_stage_maven_artifacts"></a>Stage maven
artifacts</h5></div></div></div><p>Stage artifacts to <a class="ulink"
href="https://repository.apache.org/" target="_top">repository.apache.org</a
> :</p><pre class="programlisting brush: shell">./gradlew
> -Dversion=<RELEASE-VERSION> release</pre><p>Close the staging Nexus
> repository by following the <a class="ulink"
> href="https://www.apache.org/dev/publishing-maven-artifacts.html#close-stage"
> target="_top">Closing the staged repository</a> guide.</p></div><div
> class="section" title="Upload distributions"><div
> class="titlepage"><div><div><h5 class="title"><a
> id="_upload_distributions"></a>Upload
> distributions</h5></div></div></div><p>Upload source and binary
> distributions, checksums and signatures to <a class="ulink"
> href="https://dist.apache.org/repos/dist/dev/zest/"
> target="_top">dist.apache.org/repos/dist/dev/zest</a>:</p><pre
> class="programlisting brush: shell">cp zest-java/build/distributions/*
> zest-dist-dev/
+</li></ul></div><p>See the <a class="ulink"
href="https://issues.apache.org/jira/browse/ZEST" target="_top">ZEST</a>
project on JIRA.</p></div><div class="section" title="Prepare
Release-Notes"><div class="titlepage"><div><div><h5 class="title"><a
id="_prepare_release_notes"></a>Prepare
Release-Notes</h5></div></div></div><p>Apache Zest⢠release-notes are
generated from JIRA issues.</p><p>Open the target Zest⢠versionâs
release-notes in <a class="ulink"
href="https://issues.apache.org/jira/browse/ZEST/?selectedTab=com.atlassian.jira.jira-projects-plugin:roadmap-panel"
target="_top">JIRA</a> and review them.</p><p>JIRA can produces release-notes
as HTML or plain-text.
+Set it up to generate plain-text release-notes.</p><p>We will need these in
several formats.
+Starting from the plain-text one we will generate the others.</p><p>First save
the text-plain release-notes in a file named <code
class="literal">apache-zest-java-<RELEASE-VERSION>-release-notes.txt</code>.</p><p>Convert
to Asciidoc:</p><pre class="programlisting brush: shell">cat
apache-zest-java-<RELEASE-VERSION>-release-notes.txt | \
+ sed -e "s/* \[ZEST-\([0-9]\)*\]/-
https:\/\/issues.apache.org\/jira\/browse\/ZEST-\1[ZEST-\1]/" | \
+ sed -e "s/^\*\*/===/" >
apache-zest-java-<RELEASE-VERSION>-release-notes.adoc</pre><p>Convert to
Markdown:</p><pre class="programlisting brush: shell">cat
apache-zest-java-<RELEASE-VERSION>-release-notes.txt | \
+ sed -e "s/* \[ZEST-\([0-9]\)*\]/-
[ZEST-\1](https:\/\/issues.apache.org\/jira\/browse\/ZEST-\1)/" | \
+ sed -e "s/^\*\*/###/" >
apache-zest-java-<RELEASE-VERSION>-release-notes.md</pre><p>You should
then have the two following files:</p><pre class="programlisting brush: shell">.
+âââ apache-zest-java-<RELEASE-VERSION>-release-notes.txt
+âââ apache-zest-java-<RELEASE-VERSION>-release-notes.adoc
+âââ apache-zest-java-<RELEASE-VERSION>-release-notes.md</pre><p>We
will use them later.</p></div><div class="section" title="Create a RC
branch"><div class="titlepage"><div><div><h5 class="title"><a
id="_create_a_rc_branch"></a>Create a RC branch</h5></div></div></div><p>We use
<code class="literal"><RELEASE-VERSION>-RC#</code> where <code
class="literal">RELEASE-VERSION</code> is the target release version and <code
class="literal">RC#</code> for Release Candidate and an incremental number in
case the release process has to be done several times.</p><pre
class="programlisting brush: shell">git flow release start
<RELEASE-VERSION>-RC#</pre><p>This will eventually generates a <code
class="literal"><RELEASE-VERSION>-RC#</code> tag that we will rename to
<code class="literal"><RELEASE-VERSION></code> if the vote passes, see
below.</p></div><div class="section" title="Build and audit distributions"><div
class="titlepage"><div><div><h5 class="
title"><a id="_build_and_audit_distributions"></a>Build and audit
distributions</h5></div></div></div><p>Make a complete build:</p><pre
class="programlisting brush: shell">./gradlew -Dversion=<RELEASE-VERSION>
clean check buildAll checkDists</pre><p>Review the release distributions in
<code class="literal">build/distributions</code>.</p><p>If any, make the
required changes, commit them and iterate.</p></div><div class="section"
title="Close the RC branch"><div class="titlepage"><div><div><h5
class="title"><a id="_close_the_rc_branch"></a>Close the RC
branch</h5></div></div></div><p>Once you are satisfied with the produced
artifacts, close the release candidate branch:</p><pre class="programlisting
brush: shell">git flow release finish
<RELEASE-VERSION>-RC#</pre></div><div class="section" title="Checkout the
RC tag"><div class="titlepage"><div><div><h5 class="title"><a
id="_checkout_the_rc_tag"></a>Checkout the RC tag</h5></div></div></div><p>To
build the release candidat
e bits, we need to checkout the release candidate tag, that will eventually be
promoted as a signed release tag, because the Apache Zest⢠build system
generates versionning information based on git metadata.</p><pre
class="programlisting brush: shell">git checkout
<RELEASE-VERSION>-RC#</pre></div><div class="section" title="Build RC
artifacts and distributions"><div class="titlepage"><div><div><h5
class="title"><a id="_build_rc_artifacts_and_distributions"></a>Build RC
artifacts and distributions</h5></div></div></div><pre class="programlisting
brush: shell">./gradlew -Dversion=<RELEASE-VERSION> clean check buildAll
checkDists</pre></div><div class="section" title="Stage RC maven
artifacts"><div class="titlepage"><div><div><h5 class="title"><a
id="_stage_rc_maven_artifacts"></a>Stage RC maven
artifacts</h5></div></div></div><p>Stage artifacts to <a class="ulink"
href="https://repository.apache.org/" target="_top">repository.apache.org</a>
:</p><pre class="programlis
ting brush: shell">./gradlew -Dversion=<RELEASE-VERSION>
uploadArchives</pre><p>Close the staging Nexus repository by following the <a
class="ulink"
href="https://www.apache.org/dev/publishing-maven-artifacts.html#close-stage"
target="_top">Closing the staged repository</a> guide.</p></div><div
class="section" title="Upload RC distributions"><div
class="titlepage"><div><div><h5 class="title"><a
id="_upload_rc_distributions"></a>Upload RC
distributions</h5></div></div></div><p>Upload source and binary distributions,
checksums and signatures to <a class="ulink"
href="https://dist.apache.org/repos/dist/dev/zest/"
target="_top">dist.apache.org/repos/dist/dev/zest</a>:</p><pre
class="programlisting brush: shell">cp zest-java/build/distributions/*
zest-dist-dev/
cd zest-dist-dev
-svn add --force
-svn commit -m "zest: upload <RELEASE-VERSION> to
dist/dev/zest"</pre><p>Go grab some coffee/tea/beer, this will take some
time.</p></div></div><div class="section" title="Run the vote"><div
class="titlepage"><div><div><h4 class="title"><a id="_run_the_vote"></a>Run the
vote</h4></div></div></div><p>Send a "VOTE" to the <a class="ulink"
href="mailto:[email protected]" target="_top">developer mailing list</a>
including links to release artifacts. A VOTE always contains two parts. Send an
email to the developer mailing list with the subject line:</p><pre
class="programlisting brush: text">[VOTE] Release Zest (Java Edition) version
<RELEASE-VERSION></pre><p>Here is a sample template:</p><pre
class="programlisting brush: text">Dear community,
+svn add * --force
+svn commit -m "zest: upload <RELEASE-VERSION> to
dist/dev/zest"</pre></div></div><div class="section" title="Run the vote"><div
class="titlepage"><div><div><h4 class="title"><a id="_run_the_vote"></a>Run the
vote</h4></div></div></div><p>Send a "VOTE" to the <a class="ulink"
href="mailto:[email protected]" target="_top">developer mailing list</a>
including links to release artifacts. A VOTE always contains two parts. Send an
email to the developer mailing list with the subject line:</p><pre
class="programlisting brush: text">[VOTE] Release Zest (Java Edition) version
<RELEASE-VERSION></pre><p>Here is a sample template:</p><pre
class="programlisting brush: text">Dear community,
I am happy to start the VOTE thread for Apache Zest (Java Edition)
<RELEASE-VERSION>!
@@ -134,27 +138,32 @@ git checkout master
git push origin master
git checkout develop
git push origin master
-git push origin --tags</pre></div><div class="section" title="Publish"><div
class="titlepage"><div><div><h5 class="title"><a
id="_publish"></a>Publish</h5></div></div></div><p>Promote the staged Nexus
repository so it gets synched to Maven Central by following the <a
class="ulink"
href="https://www.apache.org/dev/publishing-maven-artifacts.html#promote"
target="_top">Promoting a repo</a> guide.</p><p>Move the release distributions,
checksums and signatures from <a class="ulink"
href="https://dist.apache.org/repos/dist/dev/zest/"
target="_top">dist.apache.org/repos/dist/dev/zest</a> to <a class="ulink"
href="https://dist.apache.org/repos/dist/release/zest/"
target="_top">dist.apache.org/repos/dist/release/zest</a></p><pre
class="programlisting brush: shell">mv
zest-dist-dev/*<RELEASE-VERSION>*.* zest-dist-release/
+git push origin --tags</pre></div><div class="section" title="Publish
bits"><div class="titlepage"><div><div><h5 class="title"><a
id="_publish_bits"></a>Publish bits</h5></div></div></div><p>Promote the staged
Nexus repository so it gets synched to Maven Central by following the <a
class="ulink"
href="https://www.apache.org/dev/publishing-maven-artifacts.html#promote"
target="_top">Promoting a repo</a> guide.</p><p>Move the release distributions,
checksums and signatures from <a class="ulink"
href="https://dist.apache.org/repos/dist/dev/zest/"
target="_top">dist.apache.org/repos/dist/dev/zest</a> to <a class="ulink"
href="https://dist.apache.org/repos/dist/release/zest/"
target="_top">dist.apache.org/repos/dist/release/zest</a></p><pre
class="programlisting brush: shell">mv
zest-dist-dev/*<RELEASE-VERSION>*.* zest-dist-release/
cd zest-dist-dev
-svn add --force
+svn add * --force
svn commit -m "zest: removing <RELEASE-VERSION> from dist/dev/zest as
the VOTE passed"
cd ..
cd zest-dist-release
-svn add --force
-svn commit -m "zest: upload <RELEASE-VERSION> to
dist/release/zest""</pre><p>Once again, go grab some coffee/tea/beer, this will
take some time.</p></div><div class="section" title="Wait 24 hours"><div
class="titlepage"><div><div><h5 class="title"><a id="_wait_24_hours"></a>Wait
24 hours</h5></div></div></div><p>For mirrors to pick up the new
bits.</p></div><div class="section" title="Update the download page"><div
class="titlepage"><div><div><h5 class="title"><a
id="_update_the_download_page"></a>Update the download
page</h5></div></div></div><p>Edit <code
class="literal">zest-svn/site/src/_data/releases.yml</code> with the new
release data.
-Upmost is the latest.</p><p>Then rebuild the website:</p><pre
class="programlisting brush: shell">cd zest-svn
-jekyll build</pre><p>And publish it:</p><pre class="programlisting brush:
shell">svn add --force
-svn commit -m "zest: update website"</pre></div><div class="section"
title="Register the release"><div class="titlepage"><div><div><h5
class="title"><a id="_register_the_release"></a>Register the
release</h5></div></div></div><p>Register the new release at <a class="ulink"
href="https://reporter.apache.org/"
target="_top">reporter.apache.org</a></p></div><div class="section"
title="Announce"><div class="titlepage"><div><div><h5 class="title"><a
id="_announce"></a>Announce</h5></div></div></div><p>Finally, send an
announcement to <a class="ulink" href="mailto:[email protected]"
target="_top">dev@</a> and <a class="ulink" href="mailto:[email protected]"
target="_top">users@</a> mailing lists. Email announcements should have the
subject line:</p><pre class="programlisting brush: text">[ANNOUNCE] Released
Zest (Java Edition) version <RELEASE-VERSION></pre><p>The announcement
email should contains the release notes as text, remember you prepared a <code
class="literal">apache
-zest-java-<RELEASE-VERSION>-release-notes.txt</code> file with
them.</p></div></div><div class="section" title="VOTE fails"><div
class="titlepage"><div><div><h4 class="title"><a id="_vote_fails"></a>VOTE
fails</h4></div></div></div><div class="section" title="Drop artifacts and
distributions"><div class="titlepage"><div><div><h5 class="title"><a
id="_drop_artifacts_and_distributions"></a>Drop artifacts and
distributions</h5></div></div></div><p>Drop the Nexus staging repository by
following the <a class="ulink"
href="https://www.apache.org/dev/publishing-maven-artifacts.html#drop"
target="_top">Dropping a repo</a> guide.</p><p>Drop distributions, checksums
and signatures from <a class="ulink"
href="https://dist.apache.org/repos/dist/dev/zest/"
target="_top">dist.apache.org/repos/dist/dev/zest</a></p><pre
class="programlisting brush: shell">cd zest-dist-dev/
-rm "*<RELEASE-VERSION>*.*"
-svn add --force
-svn commit -m "zest: dropping <RELEASE-VERSION> from dist/dev/zest as
the vote failed"</pre></div><div class="section" title="Push git changes"><div
class="titlepage"><div><div><h5 class="title"><a
id="_push_git_changes"></a>Push git changes</h5></div></div></div><p>We keep
the release candidate git history.
+svn add * --force
+svn commit -m "zest: upload <RELEASE-VERSION> to
dist/release/zest""</pre></div><div class="section" title="Wait 24 hours"><div
class="titlepage"><div><div><h5 class="title"><a id="_wait_24_hours"></a>Wait
24 hours</h5></div></div></div><p>For mirrors to pick up the new
bits.</p></div><div class="section" title="Prepare an announcement"><div
class="titlepage"><div><div><h5 class="title"><a
id="_prepare_an_announcement"></a>Prepare an
announcement</h5></div></div></div><p>Coordinate a press release with <a
class="ulink" href="mailto:[email protected]"
target="_top">[email protected]</a>.</p><pre
class="literallayout">TODO</pre><p>You can reuse the release-notes content from
the <code class="literal">txt</code>/<code class="literal">adoc</code>/<code
class="literal">md</code> files created earlier.</p><p>This annoucement will be
used in a veriety of media like emails, websites etcâ¦
+Start with a text version and once satisfied produce at least an Asciidoc
version.</p></div><div class="section" title="Update the Zest⢠website"><div
class="titlepage"><div><div><h5 class="title"><a
id="_update_the_zest_website"></a>Update the Zestâ¢
website</h5></div></div></div><p>Generate the documentation and javadoc
minisite:</p><pre class="programlisting brush: shell">cd zest-java
+./gradlew -Dversion=<RELEASE-VERSION> archiveJavadocs
manuals</pre><p>This will automatically put all files into the <code
class="literal">zest-svn</code> website repository.</p><p>Create a new post on
the Zest⢠website by creating a new Asciidoc file:</p><pre
class="programlisting brush: shell">cd zest-svn
+touch site/src/_posts/YYYY-MM-DD-apache-zest-java-<RELEASE-VERSION>.adoc
+open !$</pre><p>You can reuse the Asciidoc formatted announcement
content.</p><p>Finally, edit <code
class="literal">zest-svn/site/src/_data/releases.yml</code> with the new
release data.
+Upmost is the latest.</p><p>You can live-preview your changes to the Zestâ¢
website:</p><pre class="programlisting brush: shell">cd zest-svn
+jekyll serve</pre><p>Once you are satisfied with the changes, build the
production website:</p><pre class="programlisting brush: shell">cd zest-svn
+jekyll build</pre><p>And publish it:</p><pre class="programlisting brush:
shell">svn add * --force
+svn commit -m "zest: update website"</pre></div><div class="section"
title="Register the release"><div class="titlepage"><div><div><h5
class="title"><a id="_register_the_release"></a>Register the
release</h5></div></div></div><p>Register the new release at <a class="ulink"
href="https://reporter.apache.org/"
target="_top">reporter.apache.org</a></p></div><div class="section"
title="Announce"><div class="titlepage"><div><div><h5 class="title"><a
id="_announce"></a>Announce</h5></div></div></div><p>Finally, send an
announcement to <a class="ulink" href="mailto:[email protected]"
target="_top">dev@</a> and <a class="ulink" href="mailto:[email protected]"
target="_top">users@</a> mailing lists. Email announcements should have the
subject line:</p><pre class="programlisting brush: text">[ANNOUNCE] Released
Zest (Java Edition) version <RELEASE-VERSION></pre><p>The announcement
email should contains the release-notes as text, remember they are in the <code
class="literal">apach
e-zest-java-<RELEASE-VERSION>-release-notes.txt</code> file you created
earlier.</p></div></div><div class="section" title="VOTE fails"><div
class="titlepage"><div><div><h4 class="title"><a id="_vote_fails"></a>VOTE
fails</h4></div></div></div><div class="section" title="Record failure"><div
class="titlepage"><div><div><h5 class="title"><a
id="_record_failure"></a>Record failure</h5></div></div></div><p>We keep the
release candidate git history.
It can be useful for reviewers to have access to it.
Remember, we created a release candidate branch and tags, no signed release
tag.</p><pre class="programlisting brush: shell">cd zest-java
git checkout master
git push origin master
git checkout develop
git push origin master
-git push origin --tags</pre></div><div class="section" title="Start over"><div
class="titlepage"><div><div><h5 class="title"><a id="_start_over"></a>Start
over</h5></div></div></div><p>If a new RC is to be created, restart the process
as described above.</p></div></div></div><div xmlns=""
xmlns:exsl="http://exslt.org/common" class="footer"><p>
+git push origin --tags</pre></div><div class="section" title="Drop RC
artifacts and distributions"><div class="titlepage"><div><div><h5
class="title"><a id="_drop_rc_artifacts_and_distributions"></a>Drop RC
artifacts and distributions</h5></div></div></div><p>Drop the Nexus staging
repository by following the <a class="ulink"
href="https://www.apache.org/dev/publishing-maven-artifacts.html#drop"
target="_top">Dropping a repo</a> guide.</p><p>Drop distributions, checksums
and signatures from <a class="ulink"
href="https://dist.apache.org/repos/dist/dev/zest/"
target="_top">dist.apache.org/repos/dist/dev/zest</a></p><pre
class="programlisting brush: shell">cd zest-dist-dev/
+rm "*<RELEASE-VERSION>*.*"
+svn add * --force
+svn commit -m "zest: dropping <RELEASE-VERSION> from dist/dev/zest as
the vote failed"</pre></div><div class="section" title="Start over"><div
class="titlepage"><div><div><h5 class="title"><a id="_start_over"></a>Start
over</h5></div></div></div><p>If a new RC is to be created, restart the process
as described above.</p></div></div></div><div xmlns=""
xmlns:exsl="http://exslt.org/common" class="footer"><p>
Copyright © 2015 The Apache Software Foundation, Licensed under the
<a href="http://www.apache.org/licenses/" target="_blank">Apache License,
Version 2.0</a>.
<br /><small>
Apache Zest, Zest, Apache, the Apache feather logo, and the Apache
Zest project logo are trademarks of The Apache Software Foundation.<br />