diff options
| author | ShogoAdachi <sho-adachi@xc.jp.nec.com> | 2017-09-07 19:10:24 +0900 |
|---|---|---|
| committer | Dean Troyer <dtroyer@gmail.com> | 2017-10-20 19:48:37 +0000 |
| commit | 4464109c7754a9287f75ec2af84398700d1450e6 (patch) | |
| tree | b82fe5816ae426b8a4c52e2aa1b1141b8a4d70b2 /openstackclient/image | |
| parent | de2af66c1622115dcb28aca88aa62ce5b177c771 (diff) | |
| download | python-openstackclient-4464109c7754a9287f75ec2af84398700d1450e6.tar.gz | |
Accept 0 for --min-disk and --min-ram
The current openstackclient implementation cannot accept 0
for --min-disk and --min-ram with the "openstack image set" command.
If theses options get set to 0, the option parser in openstackclient
wrongly interprets 0 as no option value. The 0 is valid for these
options if administrators want to make it the default(no minimum
requirements).
This patch fix the parser so that it avoids only 'None'.
Change-Id: Ie8ee37484c02c26f54adc56263fcd167c0ce7eb3
Closes-bug: #1719499
Diffstat (limited to 'openstackclient/image')
| -rw-r--r-- | openstackclient/image/v1/image.py | 6 | ||||
| -rw-r--r-- | openstackclient/image/v2/image.py | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/openstackclient/image/v1/image.py b/openstackclient/image/v1/image.py index b92da8ce..7a8e67bf 100644 --- a/openstackclient/image/v1/image.py +++ b/openstackclient/image/v1/image.py @@ -625,11 +625,11 @@ class SetImage(command.Command): kwargs = {} copy_attrs = ('name', 'owner', 'min_disk', 'min_ram', 'properties', 'container_format', 'disk_format', 'size', 'store', - 'location', 'copy_from', 'volume', 'force', 'checksum') + 'location', 'copy_from', 'volume', 'checksum') for attr in copy_attrs: if attr in parsed_args: val = getattr(parsed_args, attr, None) - if val: + if val is not None: # Only include a value in kwargs for attributes that are # actually present on the command line kwargs[attr] = val @@ -653,6 +653,8 @@ class SetImage(command.Command): kwargs['is_public'] = True if parsed_args.private: kwargs['is_public'] = False + if parsed_args.force: + kwargs['force'] = True # Wrap the call to catch exceptions in order to close files try: diff --git a/openstackclient/image/v2/image.py b/openstackclient/image/v2/image.py index a2e45fc7..d793c459 100644 --- a/openstackclient/image/v2/image.py +++ b/openstackclient/image/v2/image.py @@ -749,7 +749,7 @@ class SetImage(command.Command): "--tag", dest="tags", metavar="<tag>", - default=[], + default=None, action='append', help=_("Set a tag on this image " "(repeat option to set multiple tags)"), @@ -860,7 +860,7 @@ class SetImage(command.Command): for attr in copy_attrs: if attr in parsed_args: val = getattr(parsed_args, attr, None) - if val: + if val is not None: # Only include a value in kwargs for attributes that are # actually present on the command line kwargs[attr] = val |
