summaryrefslogtreecommitdiff
path: root/openstackclient/image/v1
diff options
context:
space:
mode:
authorDean Troyer <dtroyer@gmail.com>2014-09-18 00:56:38 -0500
committerDean Troyer <dtroyer@gmail.com>2015-01-20 17:01:23 -0600
commit1ecf1bee2d5c1566533cdd8fad99733ea8336aa8 (patch)
treeaaf60bd664d98b17dbb703f7b14fb681ccf24aaf /openstackclient/image/v1
parent95fe3fda3d041a4fa761040c80214d4ca5f29aaa (diff)
downloadpython-openstackclient-1ecf1bee2d5c1566533cdd8fad99733ea8336aa8.tar.gz
Begin low-level API for Image v1 and v2
image list for v1 and v2: * Add --public|--private to command parsers * Implement local public/private filtering for v1 image_list() * Pass public/private filter to server for v2 image_list() Change-Id: Ie7c24ea2d1bf2b3b1b7fa342eb45fee45894634d
Diffstat (limited to 'openstackclient/image/v1')
-rw-r--r--openstackclient/image/v1/image.py25
1 files changed, 23 insertions, 2 deletions
diff --git a/openstackclient/image/v1/image.py b/openstackclient/image/v1/image.py
index d7ece254..fc70000d 100644
--- a/openstackclient/image/v1/image.py
+++ b/openstackclient/image/v1/image.py
@@ -300,6 +300,21 @@ class ListImage(lister.Lister):
metavar="<size>",
help="Number of images to request in each paginated request",
)
+ public_group = parser.add_mutually_exclusive_group()
+ public_group.add_argument(
+ "--public",
+ dest="public",
+ action="store_true",
+ default=False,
+ help="List only public images",
+ )
+ public_group.add_argument(
+ "--private",
+ dest="private",
+ action="store_true",
+ default=False,
+ help="List only private images",
+ )
parser.add_argument(
'--long',
action='store_true',
@@ -316,15 +331,21 @@ class ListImage(lister.Lister):
kwargs = {}
if parsed_args.page_size is not None:
kwargs["page_size"] = parsed_args.page_size
+ if parsed_args.public:
+ kwargs['public'] = True
+ if parsed_args.private:
+ kwargs['private'] = True
+ kwargs['detailed'] = parsed_args.long
- data = image_client.images.list(**kwargs)
if parsed_args.long:
columns = ('ID', 'Name', 'Disk Format', 'Container Format',
'Size', 'Status')
else:
columns = ("ID", "Name")
- return (columns, (utils.get_item_properties(s, columns) for s in data))
+ data = image_client.api.image_list(**kwargs)
+
+ return (columns, (utils.get_dict_properties(s, columns) for s in data))
class SaveImage(command.Command):