Adalennis opened a new pull request, #9197: URL: https://github.com/apache/hop/pull/9197
Addresses #8970 Twelfth batch: a Result section on the pages of Send SNMP trap, Send Nagios passive check, Run pipeline unit tests, Delete execution information and Set password encoder. Every row comes from a hop-run test against the current code (91 workflows: a UDP listener for the SNMP traps, a fake NSCA server that answers with the init packet and decodes what it receives (and one that never answers), pipeline unit tests with golden data sets, File and Caching file execution information locations shared by two projects and filled by running a workflow before each test). Each action was also run after an action that is true with 2 errors and after a false action on an unconditional hop (all pass on true with 0 errors), and with a previous result holding files and rows, on success and on failure. What the tests show: - Send Nagios passive check can't send anything since Hop 2.18: jsendnsca needs commons-lang 2 (org.apache.commons.lang.Validate), which was removed from Hop's libraries in 8745d6ed87, and the plugin pom excludes all jsendnsca dependencies. The workflow stops with NoClassDefFoundError; only an empty Host name/IP address or Message still gives false. With commons-lang-2.6.jar added to the plugin lib folder everything works (levels, XOR and Triple DES, timeouts), and that is what the table describes, with a WARNING about the current state. - Send SNMP trap: User (SNMP V3) is not kept. The dialog stores the code "user", but on load setTargettype() compares it with the description "User (SNMP V3)", so it falls back to "community": a workflow run from its file always sends an SNMP V1 trap with the community string. Documented as a WARNING. - Send SNMP trap doesn't wait for an answer: it is true when nothing listens on the port, with an empty server name (local machine), an empty OID or an empty message. Only an unresolvable host or an invalid OID make it false. - Delete execution information doesn't override isEvaluation(), so a success or failure hop from it is never followed (Workflow.isHopFollowed); only an unconditional hop is. The result and the metrics are still passed on. Documented as a WARNING. - Delete execution information, Lines deleted: a File location counts each run once (a workflow run with its pipeline, actions and transforms is 6 folders and counts 1), a Caching file location counts the workflow and each pipeline separately. A Caching file location only deletes the executions of the active project, a File location those of every project. On a failure the previous value is kept. - Set password encoder with an Encoder plugin ID that doesn't exist only logs an error in the General log and falls back to the Hop encoder; the action is true and logs that it initialized the ID it was given. With AES/AES2 it fails only when no key is found at all (named variable, HOP_AES_ENCODER_KEY, key file). - Run pipeline unit tests runs every test of the list, also after one that fails, and counts 1 error; the rows a test pipeline copies to its result are not added to the action's result. Also fixed: - Send SNMP trap: target type names (Community (SNMP V1), User (SNMP V3)), defaults (port 162, community public), a description for Engine ID; a port that is not a number becomes 162. - Send Nagios passive check: labels Host name/IP address, Connection timeout, Name/ IP host, Service name; default port 5667; what is sent when the sender host or service name is empty. - Run pipeline unit tests: labels Action name and Names of the tests to execute. Found while testing (not reported yet): Send Nagios passive check missing commons-lang 2 since 2.18, Send SNMP trap losing User (SNMP V3) on load, Delete execution information never following its success/failure hops, and Set password encoder being true for an unknown plugin ID. ------------------------ Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily: - [x] Run `mvn clean install apache-rat:check` to make sure basic checks pass. A more thorough check will be performed on your pull request automatically. - [x] If you have a group of commits related to the same change, please squash your commits into one and force push your branch using `git rebase -i`. - [x] Mention the appropriate issue in your description (for example: `addresses #123`), if applicable. To make clear that you license your contribution under the [Apache License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0) you have to acknowledge this by using the following check-box. - [x] I hereby declare this contribution to be licensed under the [Apache License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0) - [ ] In any other case, please file an [Apache Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
