konpyutaika / nifikop

The NiFiKop NiFi Kubernetes operator makes it easy to run Apache NiFi on Kubernetes. Apache NiFI is a free, open-source solution that support powerful and scalable directed graphs of data routing, transformation, and system mediation logic.
https://konpyutaika.github.io/nifikop/
Apache License 2.0
122 stars 40 forks source link

Allow NiFi properties to be configured via environment variables #357

Open mh013370 opened 5 months ago

mh013370 commented 5 months ago

Is your feature request related to a problem?

No

Describe the solution you'd like to see

Provide an alternative way to configure nifi.properties via environment variables instead of needing to supply a nifi.properties file to NiFi. The set of supported environment variables can be found in the collection of scripts here: https://github.com/apache/nifi/tree/main/nifi-docker/dockerhub/sh

Tasks:

  1. Determine if it's possible for nifikop to configure NiFi's properties using only environment variables. If it is, then nifikop can stop maintaining a template of nifi.properties in the code base and rely on the one that ships with NiFi. Users can still override the nifi.properties via the NifiCluster CRD.

  2. Where possible, replace nifikop's overriding of nifi.properties with environment variables. This can be done by nifikop adding environment variables to the Pod specification.

Users may already configure environment variables via the ReadOnlyConfig.AdditionalSharedEnvs configuration, so no changes are needed to enable this.

Describe alternatives you've considered

No response

Additional context

No response