Author: mcgilman
Date: Fri Jun 9 17:19:51 2017
New Revision: 1798249
URL: http://svn.apache.org/viewvc?rev=1798249&view=rev
Log:
Minor corrections to the release guide.
Modified:
nifi/site/trunk/release-guide.html
Modified: nifi/site/trunk/release-guide.html
URL:
http://svn.apache.org/viewvc/nifi/site/trunk/release-guide.html?rev=1798249&r1=1798248&r2=1798249&view=diff
==============================================================================
--- nifi/site/trunk/release-guide.html (original)
+++ nifi/site/trunk/release-guide.html Fri Jun 9 17:19:51 2017
@@ -173,9 +173,9 @@ those variable values have been written
<pre>
Reference Example value Description
========= ============== ===========
- ${BRANCH} 0.7.0-SNAPSHOT the development branch on which the
release is based.
+ ${BRANCH} master the development branch on which the
release is based.
${NIFI_VERSION} 0.7.0 the version currently in development
on the release branch.
- ${NEXT_VERSION} 0.7.1-SNAPSHOT the future version for development
on the release branch.
+ ${NEXT_VERSION} 0.8.0-SNAPSHOT the future version for development
on the release branch.
${JIRA_TICKET} NIFI-2112 the JIRA ticket created by the
release manager for the release tasks.
${RC} 2 the Release Candidate index start at
1 for the first release candidate.
${RC_TAG_COMMIT_ID} the 40 byte commit ID of the RC tag
created during the Maven release process.
@@ -189,6 +189,10 @@ those variable values have been written
NiFi 0.7.0 RC2 release details.</em></p>
</li>
</ul>
+<p>NOTE: The next version should be the next minor version if the release is
based on a major version development branch (e.g master
+or 0.x). The next version should be the next incremental version if the
release is based on a minor version development branch (e.g
+support/nifi-1.1.x or support/nifi-0.7.4). If this is the first incremental
release (e.g. 1.2.1) for a minor release line the support
+branch may need to be created.</p>
<h2 id="what-to-validate-and-how-to-validate-a-release">What to validate and
how to validate a release</h2>
<p>The following is a list of the sorts of things that will be validated and
are the basics to check
when evaluating a release for a vote.</p>
@@ -312,7 +316,7 @@ it may be necessary to run <code>$ mvn r
<li><p>If the preparation without problems, it is time to perform the release
and deploy artifacts to staging.</p>
<pre><code> $ mvn release:perform
-Psigned_release \
- -DscmCommentPrefix="${JIRA_TICKET}-RC${RC}"
+ -DscmCommentPrefix="${JIRA_TICKET}-RC${RC}" \
-Darguments="-DskipTests"</code></pre>
<p> When this completes the artifacts have been released to the Apache Nexus
staging repository, a local release branch
has been created and there should the staging repository ID returned in a log
entry like this.</p>
@@ -341,24 +345,32 @@ click on that you can inspect the variou
<ol>
<li>ASCII armored GPG signatures (<code>--digest-algo=SHA512</code> select the
SHA512 hash algorithm). <a
href="https://www.apache.org/dev/openpgp.html#key-gen-avoid-sha1">Configure GPG
to always prefer stronger hashes</a>.<pre><code> $ gpg -a -b
--digest-algo=SHA512 nifi-${NIFI_VERSION}-source-release.zip # produces
nifi-${NIFI_VERSION}-source-release.zip.asc
$ gpg -a -b --digest-algo=SHA512 nifi-${NIFI_VERSION}-bin.tar.gz #
produces nifi-${NIFI_VERSION}-bin.tar.gz.asc
- $ gpg -a -b --digest-algo=SHA512 nifi-${NIFI_VERSION}-bin.zip #
produces nifi-${NIFI_VERSION}-bin.zip.asc</code></pre>
+ $ gpg -a -b --digest-algo=SHA512 nifi-${NIFI_VERSION}-bin.zip #
produces nifi-${NIFI_VERSION}-bin.zip.asc
+ $ gpg -a -b --digest-algo=SHA512 nifi-toolkit-${NIFI_VERSION}-bin.zip #
produces nifi-toolkit-${NIFI_VERSION}-bin.zip.asc
+ $ gpg -a -b --digest-algo=SHA512 nifi-toolkit-${NIFI_VERSION}-bin.tar.gz #
produces nifi-toolkit-${NIFI_VERSION}-bin.tar.gz.asc</code></pre>
</li>
<li>Generate md5 hash summaries.<pre><code> $ md5sum
nifi-${NIFI_VERSION}-source-release.zip | cut -d" " -f1 >
nifi-${NIFI_VERSION}-source-release.zip.md5
$ md5sum nifi-${NIFI_VERSION}-bin.tar.gz | cut -d" " -f1 >
nifi-${NIFI_VERSION}-bin.tar.gz.md5
- $ md5sum nifi-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-${NIFI_VERSION}-bin.zip.md5</code></pre>
+ $ md5sum nifi-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-${NIFI_VERSION}-bin.zip.md5
+ $ md5sum nifi-toolkit-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-toolkit-${NIFI_VERSION}-bin.zip.md5
+ $ md5sum nifi-toolkit-${NIFI_VERSION}-bin.tar.gz | cut -d" " -f1
> nifi-toolkit-${NIFI_VERSION}-bin.tar.gz.md5</code></pre>
</li>
<li>Generate SHA1 hash summaries.<pre><code> $ sha1sum
nifi-${NIFI_VERSION}-source-release.zip | cut -d" " -f1 >
nifi-${RELEASAE}-source-release.zip.sha1
$ sha1sum nifi-${NIFI_VERSION}-bin.tar.gz | cut -d" " -f1 >
nifi-${RELEASAE}-bin.tar.gz.sha1
- $ sha1sum nifi-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-${RELEASAE}-bin.zip.sha1</code></pre>
+ $ sha1sum nifi-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-${RELEASAE}-bin.zip.sha1
+ $ sha1sum nifi-toolkit-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-toolkit-${RELEASAE}-bin.zip.sha1
+ $ sha1sum nifi-toolkit-${NIFI_VERSION}-bin.tar.gz | cut -d" " -f1
> nifi-toolkit-${RELEASAE}-bin.tar.gz.sha1</code></pre>
</li>
<li>Generate SHA256 hash summaries.<pre><code> $ shasum -a 256
nifi-${NIFI_VERSION}-source-release.zip | cut -d" " -f1 >
nifi-${NIFI_VERSION}-source-release.zip.sha256
$ shasum -a 256 nifi-${NIFI_VERSION}-bin.tar.gz | cut -d" " -f1
> nifi-${NIFI_VERSION}-bin.tar.gz.sha256
- $ shasum -a 256 nifi-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-${NIFI_VERSION}-bin.zip.sha256</code></pre>
+ $ shasum -a 256 nifi-${NIFI_VERSION}-bin.zip | cut -d" " -f1 >
nifi-${NIFI_VERSION}-bin.zip.sha256
+ $ shasum -a 256 nifi-toolkit-${NIFI_VERSION}-bin.zip | cut -d" "
-f1 > nifi--toolkit${NIFI_VERSION}-bin.zip.sha256
+ $ shasum -a 256 nifi-toolkit-${NIFI_VERSION}-bin.tar.gz | cut -d" "
-f1 > nifi-toolkit-${NIFI_VERSION}-bin.tar.gz.sha256</code></pre>
</li>
</ol>
</li>
<li><p>For reviewing of the release candidate, commit the source release and
convenience binaries files along with their
-hashes and signatures to
<code>https://dist.apache.org/repos/dist/dev/nifi-${NIFI_VERSION}</code>.</p>
+hashes and signatures to
<code>https://dist.apache.org/repos/dist/dev/nifi/nifi-${NIFI_VERSION}</code>.</p>
</li>
</ol>
<h3 id="step-4-error-recovery-rm-">Step 4. Error recovery (RM)</h3>
@@ -415,7 +427,7 @@ from source, and test. The please vote:
[ ] +1 Release this package as nifi-${NIFI_VERSION}
[ ] +0 no opinion
-[ ] -1 Do not release this package because because...</code></pre>
+[ ] -1 Do not release this package because...</code></pre>
</li>
</ul>
</li>
@@ -495,7 +507,7 @@ on the release branch and a new release
I am pleased to announce that the ${NIFI_VERSION} release of Apache NiFi
passes with
X +1 (binding) votes
- Y -1 (binding) votes
+ Y +1 (non-binding) votes
0 0 votes
0 -1 votes
@@ -514,7 +526,9 @@ Here is the PMC vote thread: ${VOTE_THRE
<li><p>In repository.apache.org go to the staging repository and select
<code>release</code> and follow the instructions on the site.</p>
</li>
<li><p>Merge the release branch into master.</p>
-<pre><code> $ git push asf NIFI-${JIRA_TICKET}</code></pre>
+<pre><code> $ git checkout master
+ $ git merge --no-ff NIFI-${JIRA_TICKET}-RC${RC}
+ $ git push asf master</code></pre>
</li>
<li><p>Update Docker version information to point to the next release. For
instance, if the next version applied by Maven is 1.3.0-SNAPSHOT, these values
should be updated to 1.3.0. This currently consists of two files:</p>
<ul>
@@ -534,23 +548,27 @@ in the archive location so no need to do
</li>
<li><p>If the release is on the latest development line, update the NiFi
website documentation pages to match the release.</p>
<ol>
-<li>From a nifi.tar.gz collect the docs/html/* files and svn commit them to <a
href="https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/html/">https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/html/</a></li>
-<li>From a nifi.tar.gz collect the
nifi-framework-nar.nar/META-INF/bundled-dependencies/nifi-web-api.war/docs/rest-api/*
files and svn commit them to <a
href="https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/rest-api/">https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/rest-api/</a></li>
-<li>Run an instance of nifi</li>
-<li>Copy nifi/work/docs/components/* and svn commit to <a
href="https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/components/">https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/components/</a></li>
-<li>wget <a
href="http://localhost:8080/nifi-docs/documentation">http://localhost:8080/nifi-docs/documentation</a>
and svn commit to <a
href="https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/index.html">https://svn.apache.org/repos/asf/nifi/site/trunk/docs/nifi-docs/index.html</a></li>
+<li>Run the NiFi ${NIFI_VERSION}</li>
+<li>Pull down the documentation by running <code>wget -prk
http://${host}:${port}/nifi-docs/documentation</code></li>
+<li>Rename the file index file that was generated by running <code>mv
${host}:${port}/nifi-docs/documentation
${host}:${port}/nifi-docs/index.html</code></li>
+<li>Use svn to replace the <code>nifi</code> and <code>nifi-docs</code>
folders in <code>https://svn.apache.org/repos/asf/nifi/site/trunk/docs</code>
with those in the <code>${host}:${port}</code> directory pulled down above</li>
</ol>
</li>
<li><p>In JIRA mark the release version as 'Released' and
'Archived' through 'version' management in the
'administration' console.</p>
</li>
-<li><p>Ensure the release artifacts are successfully mirrored to the archive,
specifically <a
href="https://archive.apache.org/dist/nifi/${NIFI_VERSION}/nifi-${NIFI_VERSION}-bin.tar.gz">https://archive.apache.org/dist/nifi/${NIFI_VERSION}/nifi-${NIFI_VERSION}-bin.tar.gz</a>.
This convenience binary file is the basis for our <a
href="https://hub.docker.com/r/apache/nifi">Docker build</a> and is needed in
place before the released tag is pushed to the repository. If there were any
issues with the above listed file not being available, it may be necessary to
reach out to the ASF Infra team to adjust file size limits to accommodate
larger artifacts.</p>
+<li><p>Ensure the release artifacts are successfully mirrored to the archive,
specifically <a
href="https://archive.apache.org/dist/nifi/${NIFI_VERSION}/nifi-${NIFI_VERSION}-bin.tar.gz">https://archive.apache.org/dist/nifi/${NIFI_VERSION}/nifi-${NIFI_VERSION}-bin.tar.gz</a>.<br>This
convenience binary file is the basis for our <a
href="https://hub.docker.com/r/apache/nifi">Docker build</a> and is needed in
place before the released tag is pushed to the repository. If there were any
+issues with the above listed file not being available, it may be necessary to
reach out to the ASF Infra team to adjust file size limits to accommodate
larger artifacts.</p>
</li>
+</ol>
+<p>NOTE: The <a href="https://hub.docker.com/r/apache/nifi">Docker build</a>
is triggered by pushing the signed tag in the next step. The release artifacts
must be present
+in the archive before continuing.</p>
+<ol>
<li><p>Create a proper signed tag of the released codebase based on the RC Tag
created during the Maven release process.</p>
<pre><code>$ git tag -s rel/nifi-${NIFI_VERSION} -m "${JIRA_TICKET}
signed release tag for approved release of NiFi ${NIFI_VERSION}"
${RC_TAG_COMMIT_ID}</code></pre>
<p>For instructions on setting up to sign your tag see <a
href="http://gitready.com/advanced/2014/11/02/gpg-sign-releases.html">here</a>.
</p>
</li>
<li><p>Push the release tag to the official ASF repository.</p>
-<pre><code>$ git push asf rel/nifi-${NIFI_VERSION}
rel/nifi-${NIFI_VERSION}</code></pre>
+<pre><code>$ git push asf rel/nifi-${NIFI_VERSION}</code></pre>
</li>
<li><p>Verify that the Docker build began at the <a
href="https://hub.docker.com/r/apache/nifi/builds/">Build Status</a> page. If
the build does not take place soon after the release tag was pushed, it may be
necessary to contact ASF Infra to ask for assistance and the job to be
triggered again.</p>
</li>