From a6b9c358915bb5783c0e0f9b3d87d59fda3bcb19 Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Wed, 4 Mar 2026 12:16:16 +0000 Subject: [PATCH] identity: Fix project list SDK returns generators, not lists, and we do not see errors until they are iterated. Force early iteration by wrapping then in a list to ensure we actually see the HTTP 403 errors we were expecting. Change-Id: I0ab72e587bf4e16ae877db7a81023a226124e4d5 Signed-off-by: Stephen Finucane --- openstackclient/identity/v3/project.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/openstackclient/identity/v3/project.py b/openstackclient/identity/v3/project.py index 99242391fe..f3d7fea237 100644 --- a/openstackclient/identity/v3/project.py +++ b/openstackclient/identity/v3/project.py @@ -342,21 +342,21 @@ class ListProject(command.Lister): user = self.app.client_manager.auth_ref.user_id if user: - data = identity_client.user_projects(user, **kwargs) + data = list(identity_client.user_projects(user, **kwargs)) else: try: - data = identity_client.projects(**kwargs) + data = list(identity_client.projects(**kwargs)) except sdk_exc.ForbiddenException: # NOTE(adriant): if no filters, assume a forbidden is non-admin # wanting their own project list. if not kwargs: user = self.app.client_manager.auth_ref.user_id - data = identity_client.user_projects(user) + data = list(identity_client.user_projects(user)) else: raise if parsed_args.sort: - data = utils.sort_items(data, parsed_args.sort) + data = list(utils.sort_items(data, parsed_args.sort)) return ( column_headers,