Skip to content

Commit a74850d

Browse files
xfrnk2stephenfin
authored andcommitted
Add a column to all_projects tag of server list cmd
Add a Project ID column to the --all-projects tag of server list cmd Differentiate from the basic command, add a column for Project ID to facilitate easier identification. Add test code for the Project ID column of --all-projects tag. Change-Id: I12af2c91f934e7cd268d21cf76dda78646ed2ff4
1 parent 79de137 commit a74850d

File tree

2 files changed

+43
-0
lines changed

2 files changed

+43
-0
lines changed

openstackclient/compute/v2/server.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2853,6 +2853,10 @@ def take_action(self, parsed_args):
28532853
'Scheduler Hints',
28542854
)
28552855

2856+
if parsed_args.all_projects:
2857+
columns += ('project_id',)
2858+
column_headers += ('Project ID',)
2859+
28562860
# support for additional columns
28572861
if parsed_args.columns:
28582862
for c in parsed_args.columns:

openstackclient/tests/unit/compute/v2/test_server.py

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4594,6 +4594,15 @@ class _TestServerList(TestServer):
45944594
'Properties',
45954595
'Scheduler Hints',
45964596
)
4597+
columns_all_projects = (
4598+
'ID',
4599+
'Name',
4600+
'Status',
4601+
'Networks',
4602+
'Image',
4603+
'Flavor',
4604+
'Project ID',
4605+
)
45974606

45984607
def setUp(self):
45994608
super().setUp()
@@ -4755,6 +4764,36 @@ def test_server_list_long_option(self):
47554764
self.assertEqual(self.columns_long, columns)
47564765
self.assertEqual(self.data, tuple(data))
47574766

4767+
def test_server_list_all_projects_option(self):
4768+
self.data = tuple(
4769+
(
4770+
s.id,
4771+
s.name,
4772+
s.status,
4773+
server.AddressesColumn(s.addresses),
4774+
# Image will be an empty string if boot-from-volume
4775+
self.image.name if s.image else server.IMAGE_STRING_FOR_BFV,
4776+
self.flavor.name,
4777+
s.project_id,
4778+
)
4779+
for s in self.servers
4780+
)
4781+
arglist = [
4782+
'--all-projects',
4783+
]
4784+
verifylist = [
4785+
('all_projects', True),
4786+
('long', False),
4787+
('deleted', False),
4788+
]
4789+
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
4790+
columns, data = self.cmd.take_action(parsed_args)
4791+
4792+
self.image_client.images.assert_called()
4793+
self.compute_client.flavors.assert_called()
4794+
self.assertEqual(self.columns_all_projects, columns)
4795+
self.assertEqual(self.data, tuple(data))
4796+
47584797
def test_server_list_column_option(self):
47594798
arglist = [
47604799
'-c',

0 commit comments

Comments
 (0)