Usage
To show help:
./bin/s2s.sh -h
The following are available options:
-
--batchCount <arg>Number of flow files in a batch -
--batchDuration <arg>Duration of a batch -
--batchSize <arg>Size of flow files in a batch -
-c,--compressionUse compression -
-d,--directionDirection (valid directions:SEND,RECEIVE) (default:SEND) -
-h,--helpHelp Text (optional) -
-i,--portIdentifier <arg>Port id -
--keystore <arg>Keystore -
--keyStorePassword <arg>Keystore password -
--keyStoreType <arg>Keystore type (default:JKS) -
-n,--portNamePort name -
-p,--transportProtocolSite to site transport protocol (default:RAW) -
--peerPersistenceFile <arg>File to write peer information to so it can be recovered on restart -
--penalization <arg>Penalization period -
--proxyHost <arg>Proxy hostname -
--proxyPassword <arg>Proxy password -
--proxyPort <arg>Proxy port -
--proxyUsername <arg>Proxy username -
--timeout <arg>Timeout -
--trustStore <arg>Truststore -
--trustStorePassword <arg>Truststore password -
--trustStoreType <arg>Truststore type (default:JKS) -
-u,--url <arg>NiFI URL to connect to (default:http://localhost:8080/nifi)
The s2s cli input/output format is a JSON list of DataPackets. They can have the following formats:
[{"attributes":{"key":"value"},"data":"aGVsbG8gbmlmaQ=="}]
where data is the base64 encoded value of the FlowFile content (always used for received data) or:
[{"attributes":{"key":"value"},"dataFile":"/Users/pvillard/Documents/GitHub/nifi/nifi-toolkit/nifi-toolkit-assembly/target/nifi-toolkit-1.9.0-SNAPSHOT-bin/nifi-toolkit-1.9.0-SNAPSHOT/bin/EXAMPLE"}]
where dataFile is a file to read the FlowFile content from.
Example usage to send a FlowFile with the contents of "hey nifi" to a local unsecured NiFi over http with an input port named "input":
echo '[{"data":"aGV5IG5pZmk="}]' | bin/s2s.sh -n input -p http

