health-patterns
health-patterns copied to clipboard
Implement a better way to tell that NiFi is ready for requests
When we install the health-patterns ingestion/enrichment flow, there is a step(script) called initialize-nifi.sh that runs in an extra container in the nifi pod (it's actually built and pushed as a docker image). That script waits for the nifi server itself to be up and running and then loads the appropriate flows. Once loaded, the flows are started processor by processor. The amount of time all of this takes is not constant. At the end of the process, the script enters an infinite loop to make sure that the container does not finish (since that would cause the entire pod to terminate). Since we don't know how long it will take to start all the flows and the container never stops, our testing framework needs to use an artificial "wait" after doing a deployment before beginning tests to be sure that everything is up and ready. This item would come up with an alternative mechanism to allow the testing framework to know that the flows are ready and eliminate the need to create the artificial wait.