In this article we'll discuss how to customize your MiNiFI C++ builds to accommodate your environment. Extensions within MiNiFI C++ allow you to specify, through CMAKE, options. We'll go through the current set and update this how to as extensions are added.
Current Extensions
HTTP-CURL
Extension Name | Description | CMAKE Option |
---|---|---|
HTTP-CURL | Enables libcURL builds, thus supporting HTTP operations | -DDISABLE_CURL=TRUE |
ROCKSDB | Enables ROCKSDB to build providing provenance, flowfile, and DBContent repositories. *Note that if disabled, only volatile repositories will be allowed | -DDISABLE_ROCKSDB=TRUE |
LIBARCHIVE | Provides archive processors including MergeContent and CompressContent. | -DDISABLE_LIBARCHIVE=TRUE |
Step-by-step guide
When building you may use the following steps
- Create your CMAKE build directory in your root nifi-minifi-cpp source folder. Traditionally, this will be build.
- Change to the build directory ( cd build ) and type CMAKE .. to enable all extensions. To disable any extension, enter the CMAKE option before the prior dir
- e.g. user $ cmake -DDISABLE_CURL=TRUE -DDISABLE_ROCKSDB=TRUE -DDISABLE_LIBARCHIVE=TRUE ..
- This will disable the extensions you've specified. The command, above, will disable all extensions.
A Note about running
Disabling extensions allows us to minimize code and functionality within a binary. This may make it smaller or eliminate code that is not desired on a specific platform. Note that in doing so you change the profile of your executable. If your configuration identifies a component or processor that does not exist within your binary we will exit with a log statement indicating that it cannot be found.
Related articles