summaryrefslogtreecommitdiff
path: root/openstackclient/common
diff options
context:
space:
mode:
authorlihaijing <lihaijing@fiberhome.com>2017-09-21 14:55:17 +0800
committerDean Troyer <dtroyer@gmail.com>2017-09-26 20:49:32 +0000
commit254dbf3294c0f1edc4a2a469f556b3c4b3123a00 (patch)
tree72df106cbed6a971388a9f51b3aec7692607792c /openstackclient/common
parent953d74b5d65b095428c783f80cc61f2d85909841 (diff)
downloadpython-openstackclient-254dbf3294c0f1edc4a2a469f556b3c4b3123a00.tar.gz
Fix 'project purge' deletes ALL images problem
Closes-Bug: #1717130 Change-Id: I33c6fc7897dfee85d1c197a1267bde4abfa5bbd9
Diffstat (limited to 'openstackclient/common')
-rw-r--r--openstackclient/common/project_purge.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/openstackclient/common/project_purge.py b/openstackclient/common/project_purge.py
index dff954e7..5b1d0072 100644
--- a/openstackclient/common/project_purge.py
+++ b/openstackclient/common/project_purge.py
@@ -95,7 +95,14 @@ class ProjectPurge(command.Command):
# images
try:
image_client = self.app.client_manager.image
- data = image_client.images.list(owner=project_id)
+ api_version = int(image_client.version)
+ if api_version == 1:
+ data = image_client.images.list(owner=project_id)
+ elif api_version == 2:
+ kwargs = {'filters': {'owner': project_id}}
+ data = image_client.images.list(**kwargs)
+ else:
+ raise NotImplementedError
self.delete_objects(
image_client.images.delete, data, 'image', dry_run)
except Exception: