Merge "Add a column to all_projects tag of server list cmd"

This commit is contained in:
Zuul
2025-05-19 14:17:25 +00:00
committed by Gerrit Code Review
2 changed files with 43 additions and 0 deletions

View File

@@ -2853,6 +2853,10 @@ class ListServer(command.Lister):
'Scheduler Hints',
)
if parsed_args.all_projects:
columns += ('project_id',)
column_headers += ('Project ID',)
# support for additional columns
if parsed_args.columns:
for c in parsed_args.columns:

View File

@@ -4594,6 +4594,15 @@ class _TestServerList(TestServer):
'Properties',
'Scheduler Hints',
)
columns_all_projects = (
'ID',
'Name',
'Status',
'Networks',
'Image',
'Flavor',
'Project ID',
)
def setUp(self):
super().setUp()
@@ -4755,6 +4764,36 @@ class TestServerList(_TestServerList):
self.assertEqual(self.columns_long, columns)
self.assertEqual(self.data, tuple(data))
def test_server_list_all_projects_option(self):
self.data = tuple(
(
s.id,
s.name,
s.status,
server.AddressesColumn(s.addresses),
# Image will be an empty string if boot-from-volume
self.image.name if s.image else server.IMAGE_STRING_FOR_BFV,
self.flavor.name,
s.project_id,
)
for s in self.servers
)
arglist = [
'--all-projects',
]
verifylist = [
('all_projects', True),
('long', False),
('deleted', False),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
self.image_client.images.assert_called()
self.compute_client.flavors.assert_called()
self.assertEqual(self.columns_all_projects, columns)
self.assertEqual(self.data, tuple(data))
def test_server_list_column_option(self):
arglist = [
'-c',