remove remainder argument
Bug #1160203 Change-Id: I01c6aed18ccd7fe61a5ea4562c79d47222175147
This commit is contained in:
@@ -119,14 +119,6 @@ def add_sorting_argument(parser):
|
|||||||
choices=['asc', 'desc'])
|
choices=['asc', 'desc'])
|
||||||
|
|
||||||
|
|
||||||
def add_extra_argument(parser, name, _help):
|
|
||||||
parser.add_argument(
|
|
||||||
name,
|
|
||||||
nargs=argparse.REMAINDER,
|
|
||||||
help=_help + ': --key1 [type=int|bool|...] value '
|
|
||||||
'[--key2 [type=int|bool|...] value ...]')
|
|
||||||
|
|
||||||
|
|
||||||
def is_number(s):
|
def is_number(s):
|
||||||
try:
|
try:
|
||||||
float(s) # for int, long and float
|
float(s) # for int, long and float
|
||||||
@@ -446,8 +438,6 @@ class ListCommand(QuantumCommand, lister.Lister):
|
|||||||
def get_parser(self, prog_name):
|
def get_parser(self, prog_name):
|
||||||
parser = super(ListCommand, self).get_parser(prog_name)
|
parser = super(ListCommand, self).get_parser(prog_name)
|
||||||
add_show_list_common_argument(parser)
|
add_show_list_common_argument(parser)
|
||||||
if self.unknown_parts_flag:
|
|
||||||
add_extra_argument(parser, 'filter_specs', 'filters options')
|
|
||||||
if self.pagination_support:
|
if self.pagination_support:
|
||||||
add_pagination_argument(parser)
|
add_pagination_argument(parser)
|
||||||
if self.sorting_support:
|
if self.sorting_support:
|
||||||
@@ -456,8 +446,6 @@ class ListCommand(QuantumCommand, lister.Lister):
|
|||||||
|
|
||||||
def args2search_opts(self, parsed_args):
|
def args2search_opts(self, parsed_args):
|
||||||
search_opts = {}
|
search_opts = {}
|
||||||
if self.unknown_parts_flag:
|
|
||||||
search_opts = parse_args_to_dict(parsed_args.filter_specs)
|
|
||||||
fields = parsed_args.fields
|
fields = parsed_args.fields
|
||||||
if parsed_args.fields:
|
if parsed_args.fields:
|
||||||
search_opts.update({'fields': fields})
|
search_opts.update({'fields': fields})
|
||||||
|
|||||||
@@ -176,9 +176,6 @@ class UpdateQuota(QuantumCommand, show.ShowOne):
|
|||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--security-group-rule', metavar='security_group_rules',
|
'--security-group-rule', metavar='security_group_rules',
|
||||||
help='the limit of security groups rules')
|
help='the limit of security groups rules')
|
||||||
quantumv20.add_extra_argument(
|
|
||||||
parser, 'value_specs',
|
|
||||||
'new values for the %s' % self.resource)
|
|
||||||
return parser
|
return parser
|
||||||
|
|
||||||
def _validate_int(self, name, value):
|
def _validate_int(self, name, value):
|
||||||
@@ -190,10 +187,7 @@ class UpdateQuota(QuantumCommand, show.ShowOne):
|
|||||||
raise exceptions.QuantumClientException(message=message)
|
raise exceptions.QuantumClientException(message=message)
|
||||||
return return_value
|
return return_value
|
||||||
|
|
||||||
def get_data(self, parsed_args):
|
def args2body(self, parsed_args):
|
||||||
self.log.debug('run(%s)' % parsed_args)
|
|
||||||
quantum_client = self.get_client()
|
|
||||||
quantum_client.format = parsed_args.request_format
|
|
||||||
quota = {}
|
quota = {}
|
||||||
for resource in ('network', 'subnet', 'port', 'router', 'floatingip',
|
for resource in ('network', 'subnet', 'port', 'router', 'floatingip',
|
||||||
'security_group', 'security_group_rule'):
|
'security_group', 'security_group_rule'):
|
||||||
@@ -201,14 +195,25 @@ class UpdateQuota(QuantumCommand, show.ShowOne):
|
|||||||
quota[resource] = self._validate_int(
|
quota[resource] = self._validate_int(
|
||||||
resource,
|
resource,
|
||||||
getattr(parsed_args, resource))
|
getattr(parsed_args, resource))
|
||||||
value_specs = parsed_args.value_specs
|
return {self.resource: quota}
|
||||||
if value_specs:
|
|
||||||
quota.update(quantumv20.parse_args_to_dict(value_specs))
|
def get_data(self, parsed_args):
|
||||||
|
self.log.debug('run(%s)' % parsed_args)
|
||||||
|
quantum_client = self.get_client()
|
||||||
|
quantum_client.format = parsed_args.request_format
|
||||||
|
_extra_values = quantumv20.parse_args_to_dict(self.values_specs)
|
||||||
|
quantumv20._merge_args(self, parsed_args, _extra_values,
|
||||||
|
self.values_specs)
|
||||||
|
body = self.args2body(parsed_args)
|
||||||
|
if self.resource in body:
|
||||||
|
body[self.resource].update(_extra_values)
|
||||||
|
else:
|
||||||
|
body[self.resource] = _extra_values
|
||||||
obj_updator = getattr(quantum_client,
|
obj_updator = getattr(quantum_client,
|
||||||
"update_%s" % self.resource)
|
"update_%s" % self.resource)
|
||||||
tenant_id = get_tenant_id(parsed_args.tenant_id,
|
tenant_id = get_tenant_id(parsed_args.tenant_id,
|
||||||
quantum_client)
|
quantum_client)
|
||||||
data = obj_updator(tenant_id, {self.resource: quota})
|
data = obj_updator(tenant_id, body)
|
||||||
if self.resource in data:
|
if self.resource in data:
|
||||||
for k, v in data[self.resource].iteritems():
|
for k, v in data[self.resource].iteritems():
|
||||||
if isinstance(v, list):
|
if isinstance(v, list):
|
||||||
|
|||||||
Reference in New Issue
Block a user