[jira] [Commented] (METRON-1013) StellarShell does not validate parameters like zookeeper urls properly
[ https://issues.apache.org/jira/browse/METRON-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16079209#comment-16079209 ] ASF GitHub Bot commented on METRON-1013: GitHub user ottobackwards reopened a pull request: https://github.com/apache/metron/pull/639 METRON-1013 add command line verification to stellar shell Stellar does no verification of parameters passed on the command line. It should check if the files don't exist for -v, -p, irc, or the zookeeper url fragment is malformed. This PR adds that verification, and tests for those parameters ## Testing * build and tests should run * run stellar from the code base ( out of metron-stellar/stellar-common), passing in invalid arguments ( see the unit test for examples ) ```bash ยป mvn exec:java \ -Dexec.mainClass="org.apache.metron.stellar.common.shell.StellarShell" -Dexec.args="-z node1" [INFO] Scanning for projects... [INFO] [INFO] [INFO] Building stellar-common 0.4.1 [INFO] [INFO] [INFO] --- exec-maven-plugin:1.6.0:java (default-cli) @ stellar-common --- Zookeeper option must have port: node1 ``` * or run stellar from a metron install ## Pull Request Checklist ### For all changes: - [x ] Is there a JIRA ticket associated with this PR? If not one needs to be created at [Metron Jira](https://issues.apache.org/jira/browse/METRON/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel). - [x ] Does your PR title start with METRON- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ x] Has your PR been rebased against the latest commit within the target branch (typically master)? ### For code changes: - [x ] Have you included steps to reproduce the behavior or problem that is being changed or addressed? - [ x] Have you included steps or a guide to how the change may be verified and tested manually? - [x ] Have you ensured that the full suite of tests and checks have been executed in the root incubating-metron folder via: ``` mvn -q clean integration-test install && build_utils/verify_licenses.sh ``` - [x ] Have you written or updated unit tests and or integration tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent? ### For documentation related changes: - [x ] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via `site-book/target/site/index.html`: ``` cd site-book mvn site ``` Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. It is also recommended that [travis-ci](https://travis-ci.org) is set up for your personal repository such that your branches are built there before submitting a pull request. You can merge this pull request into a Git repository by running: $ git pull https://github.com/ottobackwards/metron stellar_verify_zookeeper Alternatively you can review and apply these changes as the patch at: https://github.com/apache/metron/pull/639.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #639 commit 47579a1bfba0f06def54d39b23c80646511f5a87 Author: Otto FowlerDate: 2017-07-08T16:03:40Z add command line verification to stellar shell commit 5abe8acb474807acf0027dd7f06d698ad2b4cb51 Author: Otto Fowler Date: 2017-07-08T16:14:11Z do not output the exception, just the message to console > StellarShell does not validate parameters like zookeeper urls properly > -- > > Key: METRON-1013 > URL: https://issues.apache.org/jira/browse/METRON-1013 > Project: Metron > Issue Type: Bug >Affects Versions: 0.4.0 >Reporter: Otto Fowler > > If you pass an invalid url to -z for example - you will get a wait and then > an exception crashing the shell. > In the case of -z, I am not sure url is the right name, since we want
[jira] [Commented] (METRON-1013) StellarShell does not validate parameters like zookeeper urls properly
[ https://issues.apache.org/jira/browse/METRON-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16079208#comment-16079208 ] ASF GitHub Bot commented on METRON-1013: Github user ottobackwards commented on the issue: https://github.com/apache/metron/pull/639 Fixed description > StellarShell does not validate parameters like zookeeper urls properly > -- > > Key: METRON-1013 > URL: https://issues.apache.org/jira/browse/METRON-1013 > Project: Metron > Issue Type: Bug >Affects Versions: 0.4.0 >Reporter: Otto Fowler > > If you pass an invalid url to -z for example - you will get a wait and then > an exception crashing the shell. > In the case of -z, I am not sure url is the right name, since we want > host:port, with host being a valid name or ip address and port. > We also do use a default port if none is provided, we probably should. > A 'dev' default for the whole thing would be 'node1:2181', to match our > vagrant environments. I propose that we use that. > Thus: > * no -z => node1:2181 > * -z -> validate host name, if no port then 2181 > * if port then validate port -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (METRON-1013) StellarShell does not validate parameters like zookeeper urls properly
[ https://issues.apache.org/jira/browse/METRON-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16079207#comment-16079207 ] ASF GitHub Bot commented on METRON-1013: Github user ottobackwards closed the pull request at: https://github.com/apache/metron/pull/639 > StellarShell does not validate parameters like zookeeper urls properly > -- > > Key: METRON-1013 > URL: https://issues.apache.org/jira/browse/METRON-1013 > Project: Metron > Issue Type: Bug >Affects Versions: 0.4.0 >Reporter: Otto Fowler > > If you pass an invalid url to -z for example - you will get a wait and then > an exception crashing the shell. > In the case of -z, I am not sure url is the right name, since we want > host:port, with host being a valid name or ip address and port. > We also do use a default port if none is provided, we probably should. > A 'dev' default for the whole thing would be 'node1:2181', to match our > vagrant environments. I propose that we use that. > Thus: > * no -z => node1:2181 > * -z -> validate host name, if no port then 2181 > * if port then validate port -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (METRON-1013) StellarShell does not validate parameters like zookeeper urls properly
[ https://issues.apache.org/jira/browse/METRON-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16078367#comment-16078367 ] Nick Allen commented on METRON-1013: What do you mean by that [~ottobackwards]? > StellarShell does not validate parameters like zookeeper urls properly > -- > > Key: METRON-1013 > URL: https://issues.apache.org/jira/browse/METRON-1013 > Project: Metron > Issue Type: Bug >Affects Versions: 0.4.0 >Reporter: Otto Fowler > > If you pass an invalid url to -z for example - you will get a wait and then > an exception crashing the shell. > In the case of -z, I am not sure url is the right name, since we want > host:port, with host being a valid name or ip address and port. > We also do use a default port if none is provided, we probably should. > A 'dev' default for the whole thing would be 'node1:2181', to match our > vagrant environments. I propose that we use that. > Thus: > * no -z => node1:2181 > * -z -> validate host name, if no port then 2181 > * if port then validate port -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (METRON-1013) StellarShell does not validate parameters like zookeeper urls properly
[ https://issues.apache.org/jira/browse/METRON-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16078303#comment-16078303 ] Otto Fowler commented on METRON-1013: - How about attempt to connect to ZK on demand? > StellarShell does not validate parameters like zookeeper urls properly > -- > > Key: METRON-1013 > URL: https://issues.apache.org/jira/browse/METRON-1013 > Project: Metron > Issue Type: Bug >Affects Versions: 0.4.0 >Reporter: Otto Fowler > > If you pass an invalid url to -z for example - you will get a wait and then > an exception crashing the shell. > In the case of -z, I am not sure url is the right name, since we want > host:port, with host being a valid name or ip address and port. > We also do use a default port if none is provided, we probably should. > A 'dev' default for the whole thing would be 'node1:2181', to match our > vagrant environments. I propose that we use that. > Thus: > * no -z => node1:2181 > * -z -> validate host name, if no port then 2181 > * if port then validate port -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (METRON-1013) StellarShell does not validate parameters like zookeeper urls properly
[ https://issues.apache.org/jira/browse/METRON-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16078173#comment-16078173 ] Nick Allen commented on METRON-1013: I do agree that the long timeout can be annoying if there is a typo in your Zk host:port. Although, I think the default behavior should remain as-is; to not connect to Zk. You don't necessarily need a connection to Zk to use the REPL. > StellarShell does not validate parameters like zookeeper urls properly > -- > > Key: METRON-1013 > URL: https://issues.apache.org/jira/browse/METRON-1013 > Project: Metron > Issue Type: Bug >Affects Versions: 0.4.0 >Reporter: Otto Fowler > > If you pass an invalid url to -z for example - you will get a wait and then > an exception crashing the shell. > In the case of -z, I am not sure url is the right name, since we want > host:port, with host being a valid name or ip address and port. > We also do use a default port if none is provided, we probably should. > A 'dev' default for the whole thing would be 'node1:2181', to match our > vagrant environments. I propose that we use that. > Thus: > * no -z => node1:2181 > * -z -> validate host name, if no port then 2181 > * if port then validate port -- This message was sent by Atlassian JIRA (v6.4.14#64029)