/nifi-nar-bundles

Primary LanguageJavaApache License 2.0Apache-2.0

Code coverage

Coverage

nifi-nar-bundles

This project contains assorted Apache NiFi components.

Requirements

  • Apache NiFi 1.15.3 or newer
  • JDK 11 or newer
  • Apache Maven 3.5.0 or newer

Getting Started

Building

$ mvn clean package

This will create several .nar files, and collect them under nifi-assembly/target/asymmetrik-nifi-nars-0.12.0-SNAPSHOT. For convenience, this will also package all .nar files into a single distribution tar.gz file under nifi-assembly/target/.

$ ls -1 nifi-assembly/target/asymmetrik-nifi-nars-*
nifi-assembly/target/asymmetrik-nifi-nars-0.12.0-SNAPSHOT.tar.gz

nifi-assembly/target/asymmetrik-nifi-nars-0.12.0-SNAPSHOT:
asymmetrik-nifi-nars-0.12.0-SNAPSHOT

Tests Dependencies

The test suite contains integration tests for both InfluxDB and MongoDB. As such, both must be installed on the test server in order to successfully build and test this project. For InfluxDB installation go to https://portal.influxdata.com/downloads. On CentOS, MongoDB can be installed by

# Install InfluxDB
wget https://dl.influxdata.com/influxdb/releases/influxdb-1.3.5.x86_64.rpm
sudo yum localinstall influxdb-1.3.5.x86_64.rpm

# Install MongoDB
sudo yum update mongodb-org 

Deploying

Navigate to your NiFi installation, and edit conf/nifi.properties adding the nars as an additional nifi.nar.library.directory.* entry. For more information, see the "Core Properties" section of the NiFi System Administrator’s Guide.

For example:

nifi.nar.library.directory=./lib
nifi.nar.library.directory.ext1=/path/to/asymm-nifi-nars/dist/target/asymmetrik-nifi-nars-0.12.0-SNAPSHOT/asymmetrik-nifi-nars-0.12.0-SNAPSHOT

Then start NiFi as you normally would:

$ ./bin/nifi.sh start

Releasing

To tag and release:

$ mvn release:prepare -Prpm
$ mvn release:perform -Prpm

You must have access to deploy to the repository in the distributionManagement section of the pom.xml.