Not uncaught: it gets handled exactly the way that all invalid parameters
get handled - the exception gets thrown in the parser, it bubbles up, and
gets caught by the framework and turned into an error:

[sun-wukong incubator-aurora (instance-syntax)]$ ./dist/client.pex job kill
west/mchucarroll/test/foo/asonteuh
usage: client.pex job kill [-h] [--open-browser] [--config CONFIG]
                           CLUSTER/ROLE/ENV/NAME/INSTANCES
client.pex job kill: error: argument CLUSTER/ROLE/ENV/NAME/INSTANCES:
invalid instance_specifier value: 'west/mchucarroll/test/foo/asonteuh'


On Tue, Mar 25, 2014 at 6:22 PM, Brian Wickman <wick...@apache.org> wrote:

>    This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/19431/
>
> On March 24th, 2014, 6:57 p.m. UTC, *Mark Chu-Carroll* wrote:
>
>   
> src/main/python/apache/aurora/client/cli/options.py<https://reviews.apache.org/r/19431/diff/4/?file=532893#file532893line121>
>  (Diff
> revision 4)
>
> def parse_qualified_role(rolestr):
>
>   111
>
>   for part in instances.split(','):
>
> 121
>
>   for part in instances.split(','):
>
>  112
>
>     x = part.split('-')
>
> 122
>
>     x = part.split('-')
>
>  113
>
>     result.update(range(int(x[0]), int(x[-1]) + 1))
>
> 123
>
>     result.update(range(int(x[0]), int(x[-1]) + 1))
>
>  114
>
>   return sorted(result)
>
> 124
>
>   return sorted(result)
>
>   "all" was never revealed to users, and we've decided to get rid of it. It 
> will never show up in a user-visible way; mentioning it here will just be 
> confusing.
>
>  I understand, but there is no input sanitation preventing you from doing 
> "west/foo/prod/bar/morfgorf" -- it will raise an uncaught ValueError here.
>
>
> - Brian
>
> On March 24th, 2014, 6:58 p.m. UTC, Mark Chu-Carroll wrote:
>   Review request for Aurora, Bill Farner and Brian Wickman.
> By Mark Chu-Carroll.
>
> *Updated March 24, 2014, 6:58 p.m.*
>  *Bugs: * aurora-268 <https://issues.apache.org/jira/browse/aurora-268>
>  *Repository: * aurora
> Description
>
> Add instance specifier syntax to commands that can specify instances for 
> clientv2.
>
> Also, while I was at it, I added the kill/killall distinction to clientv2.
>
>   Testing
>
> [sun-wukong incubator-aurora (instance-syntax)]$ !./p
> ./pants src/test/python/apache/aurora/client/cli:all
> Build operating on targets: 
> OrderedSet([PythonTestSuite(src/test/python/apache/aurora/client/cli/BUILD:all)])
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 4 items
>
> src/test/python/apache/aurora/client/cli/test_bridge.py ....
>
> =========================== 4 passed in 0.02 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 5 items
>
> src/test/python/apache/aurora/client/cli/test_help.py .....
>
> =========================== 5 passed in 0.48 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 27 items
>
> src/test/python/apache/aurora/client/cli/test_cancel_update.py ..
> src/test/python/apache/aurora/client/cli/test_create.py ....
> src/test/python/apache/aurora/client/cli/test_diff.py ...
> src/test/python/apache/aurora/client/cli/test_kill.py .....
> src/test/python/apache/aurora/client/cli/test_restart.py ...
> src/test/python/apache/aurora/client/cli/test_status.py .......
> src/test/python/apache/aurora/client/cli/test_update.py ...
>
> ========================== 27 passed in 1.63 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 2 items
>
> src/test/python/apache/aurora/client/cli/test_plugins.py ..
>
> =========================== 2 passed in 0.49 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 3 items
>
> src/test/python/apache/aurora/client/cli/test_quota.py ...
>
> =========================== 3 passed in 0.50 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 5 items
>
> src/test/python/apache/aurora/client/cli/test_sla.py .....
>
> =========================== 5 passed in 0.53 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 2 items
>
> src/test/python/apache/aurora/client/cli/test_task_run.py ..
>
> =========================== 2 passed in 0.50 seconds 
> ===========================
> src.test.python.apache.aurora.client.cli.bridge                               
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.help                                 
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.job                                  
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.plugins                              
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.quota                                
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.sla                                  
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.task                                 
>   .....   SUCCESS
> [sun-wukong incubator-aurora (instance-syntax)]$
> [sun-wukong incubator-aurora (instance-syntax)]$ grep INSTANCES_OPTION 
> src/main/python/apache/aurora/client/cli/*.py
> src/main/python/apache/aurora/client/cli/options.py:INSTANCES_OPTION = 
> CommandOption('--instances', type=parse_instances, dest='instances',
> src/main/python/apache/aurora/client/cli/task.py:    INSTANCES_OPTION,
> [sun-wukong incubator-aurora (instance-syntax)]$ ./pants 
> src/test/python/apache/aurora/client/cli:all
> Build operating on targets: 
> OrderedSet([PythonTestSuite(src/test/python/apache/aurora/client/cli/BUILD:all)])
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 4 items
>
> src/test/python/apache/aurora/client/cli/test_bridge.py ....
>
> =========================== 4 passed in 0.02 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 5 items
>
> src/test/python/apache/aurora/client/cli/test_help.py .....
>
> =========================== 5 passed in 0.47 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 27 items
>
> src/test/python/apache/aurora/client/cli/test_cancel_update.py ..
> src/test/python/apache/aurora/client/cli/test_create.py ....
> src/test/python/apache/aurora/client/cli/test_diff.py ...
> src/test/python/apache/aurora/client/cli/test_kill.py .....
> src/test/python/apache/aurora/client/cli/test_restart.py ...
> src/test/python/apache/aurora/client/cli/test_status.py .......
> src/test/python/apache/aurora/client/cli/test_update.py ...
>
> ========================== 27 passed in 1.65 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 2 items
>
> src/test/python/apache/aurora/client/cli/test_plugins.py ..
>
> =========================== 2 passed in 0.51 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 3 items
>
> src/test/python/apache/aurora/client/cli/test_quota.py ...
>
> =========================== 3 passed in 0.49 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 5 items
>
> src/test/python/apache/aurora/client/cli/test_sla.py .....
>
> =========================== 5 passed in 0.53 seconds 
> ===========================
> ============================= test session starts 
> ==============================
> platform darwin -- Python 2.6.8 -- py-1.4.20 -- pytest-2.5.2
> collected 2 items
>
> src/test/python/apache/aurora/client/cli/test_task_run.py ..
>
> =========================== 2 passed in 0.53 seconds 
> ===========================
> src.test.python.apache.aurora.client.cli.bridge                               
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.help                                 
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.job                                  
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.plugins                              
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.quota                                
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.sla                                  
>   .....   SUCCESS
> src.test.python.apache.aurora.client.cli.task                                 
>   .....   SUCCESS
>
>   Diffs
>
>    - src/main/python/apache/aurora/client/cli/context.py
>    (dad4fcb63c7d7b6bce898b1a4202425f5a0d70fe)
>    - src/main/python/apache/aurora/client/cli/jobs.py
>    (3a68cf8dadcf2984a3ed97e7213cdf1fa9cb9fa4)
>    - src/main/python/apache/aurora/client/cli/options.py
>    (1f33ea293969326c4e8cbd39e54b173f659e61bf)
>    - src/main/python/apache/aurora/client/cli/task.py
>    (8d4d38efbd126911f46bc3f8944e81bc9d149e32)
>    - src/main/python/apache/aurora/client/config.py
>    (1fe5db429007850911f19517565d49b0518e8196)
>    - src/test/python/apache/aurora/client/cli/test_kill.py
>    (6040ed45eb1d2d8ed2b0a09718e13ad8dbb0e6aa)
>    - src/test/python/apache/aurora/client/cli/test_restart.py
>    (7547bd79f059c9d535db926d882abc0b46f9d046)
>    - src/test/python/apache/aurora/client/cli/util.py
>    (db65eee3aeba651f3dedc76233f589a7b22020e8)
>
> View Diff <https://reviews.apache.org/r/19431/diff/>
>

Reply via email to