From 3e83e7471b57ed1a2c29a5402059e21da6db0666 Mon Sep 17 00:00:00 2001 From: Jose Castro Leon Date: Thu, 12 Mar 2020 14:43:18 +0100 Subject: Allow os quota list query to filter by project In the os quota list command, project parameter is completely ignored ending up in a request to all projects and then all quotas. This patch enables back the parameter and does a single call to quotas if specified. Change-Id: Ie17c256e2bdc307dcd94ad5be7abdbffa776d369 Story: 2007422 Task: 39043 --- openstackclient/common/quota.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'openstackclient/common') diff --git a/openstackclient/common/quota.py b/openstackclient/common/quota.py index 37437344..71b8ea61 100644 --- a/openstackclient/common/quota.py +++ b/openstackclient/common/quota.py @@ -274,9 +274,18 @@ class ListQuota(command.Lister, BaseQuota): return parser def take_action(self, parsed_args): - projects = self.app.client_manager.identity.projects.list() result = [] - project_ids = [getattr(p, 'id', '') for p in projects] + project_ids = [] + if parsed_args.project is None: + for p in self.app.client_manager.identity.projects.list(): + project_ids.append(getattr(p, 'id', '')) + else: + identity_client = self.app.client_manager.identity + project = utils.find_resource( + identity_client.projects, + parsed_args.project, + ) + project_ids.append(getattr(project, 'id', '')) if parsed_args.compute: if parsed_args.detail: -- cgit v1.2.1