You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nifi.apache.org by Aldrin Piri <al...@apache.org> on 2017/05/05 15:40:37 UTC

Apache NiFi MiNiFI C++ 0.2.0 Release Helper Guide

Hello Apache NiFi community,

Please find the associated guidance to help those interested in validating/verifying the release so they can vote.

# Download latest KEYS file:
https://dist.apache.org/repos/dist/dev/nifi/KEYS

# Import keys file:
gpg --import KEYS

# Pull down nifi-minifi-cpp-0.2.0 source release artifacts for review:

wget https://dist.apache.org/repos/dist/dev/nifi/nifi-minifi-cpp/0.2.0/nifi-minifi-cpp-0.2.0-source.tar.gz
wget https://dist.apache.org/repos/dist/dev/nifi/nifi-minifi-cpp/0.2.0/nifi-minifi-cpp-0.2.0-source.tar.gz.asc
wget https://dist.apache.org/repos/dist/dev/nifi/nifi-minifi-cpp/0.2.0/nifi-minifi-cpp-0.2.0-source.tar.gz.md5
wget https://dist.apache.org/repos/dist/dev/nifi/nifi-minifi-cpp/0.2.0/nifi-minifi-cpp-0.2.0-source.tar.gz.sha1
wget https://dist.apache.org/repos/dist/dev/nifi/nifi-minifi-cpp/0.2.0/nifi-minifi-cpp-0.2.0-source.tar.gz.sha256

# Verify the signature
gpg --verify nifi-minifi-cpp-0.2.0-source.tar.gz.asc

# Verify the hashes (md5, sha1, sha256) match the source and what was provided in the vote email thread
md5sum nifi-minifi-cpp-0.2.0-source.tar.gz
sha1sum nifi-minifi-cpp-0.2.0-source.tar.gz
sha256sum nifi-minifi-cpp-0.2.0-source.tar.gz

# Untar nifi-minifi-cpp-0.2.0-source.tar.gz
tar xf nifi-minifi-cpp-0.2.0-source.tar.gz

# Verify the build works

Be mindful of the pre-requisites required for the C++ version of MiNiFi, enumerated in the README [1] and the switching to the CMake build system
These can vary from system to system and distribution, an example of the package listing for a recent Ubuntu release is:
  cmake gcc g++ libcurl4-openssl-dev libleveldb-dev libleveldb1v5 uuid-dev uuid libboost-all-dev libssl-dev doxygen

Once the required environment is established, a build with testing and linting can be performed via:

  cd nifi-minifi-cpp-0.2.0-source
  mkdir build
  cd build
  cmake ..
  make package
  make test
  make linter

# Verify the contents contain a good README, NOTICE, and LICENSE.

# Verify the git commit ID is correct

# Verify the RC was branched off the correct git commit ID

# Look at the resulting convenience assembly (nifi-minifi-cpp-0.2.0-bin.tar.gz) found in your build directory

# Make sure the README, NOTICE, and LICENSE are present and correct

# Run the resulting convenience binary and make sure it works as expected

Be mindful of caveats for this initial release, listed in the README.

For some additional assistance, a package with configuration files for both a MiNiFI instance and a NiFi instance available at https://cwiki.apache.org/confluence/display/MINIFI/Releasing+MiNiFi#ReleasingMiNiFi-SampleNiFiandMiNiFiConfigurationtotransmitdatafromMiNiFitoNiFiviaSitetoSite
The provided sample configuration bundle assumes that NiFi is configured to listen on port 8081 and has 10001 configured for Site to Site's nifi.remote.input.socket.port.

# Send a response to the vote thread indicating a +1, 0, -1 based on your findings.

Thank you for your time and effort to validate the release!

[1] https://github.com/apache/nifi-minifi-cpp/blob/MINIFI-267-RC1/README.md#system-requirements