Skip to content

Commit a1f7bd2

Browse files
committed
Add support for showing requested az in output
This change adds support for showing the availability zone requested during instance create in server show and server list --long output. Depends-On: https://review.opendev.org/c/openstack/nova/+/904568 Depends-On: https://review.opendev.org/c/openstack/openstacksdk/+/904490 Change-Id: I1772e06b4f043ef3118f036f3908ec70515144bd
1 parent 03da934 commit a1f7bd2

2 files changed

Lines changed: 17 additions & 0 deletions

File tree

openstackclient/compute/v2/server.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,7 @@ def _prep_server_detail(compute_client, image_client, server, refresh=True):
180180
'updated_at': 'updated',
181181
'user_data': 'OS-EXT-SRV-ATTR:user_data',
182182
'vm_state': 'OS-EXT-STS:vm_state',
183+
'pinned_availability_zone': 'pinned_availability_zone',
183184
}
184185
# Some columns returned by openstacksdk should not be shown because they're
185186
# either irrelevant or duplicates
@@ -2753,11 +2754,13 @@ def take_action(self, parsed_args):
27532754
if parsed_args.long:
27542755
columns += (
27552756
'availability_zone',
2757+
'pinned_availability_zone',
27562758
'hypervisor_hostname',
27572759
'metadata',
27582760
)
27592761
column_headers += (
27602762
'Availability Zone',
2763+
'Pinned Availability Zone',
27612764
'Host',
27622765
'Properties',
27632766
)
@@ -2792,6 +2795,12 @@ def take_action(self, parsed_args):
27922795
if c in ('Availability Zone', "availability_zone"):
27932796
columns += ('availability_zone',)
27942797
column_headers += ('Availability Zone',)
2798+
if c in (
2799+
'pinned_availability_zone',
2800+
"Pinned Availability Zone",
2801+
):
2802+
columns += ('Pinned Availability Zone',)
2803+
column_headers += ('Pinned Availability Zone',)
27952804
if c in ('Host', "host"):
27962805
columns += ('hypervisor_hostname',)
27972806
column_headers += ('Host',)

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

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4644,6 +4644,7 @@ class _TestServerList(TestServer):
46444644
'Flavor Name',
46454645
'Flavor ID',
46464646
'Availability Zone',
4647+
'Pinned Availability Zone',
46474648
'Host',
46484649
'Properties',
46494650
)
@@ -4785,6 +4786,7 @@ def test_server_list_long_option(self):
47854786
self.flavor.name,
47864787
s.flavor['id'],
47874788
getattr(s, 'availability_zone'),
4789+
getattr(s, 'pinned_availability_zone', ''),
47884790
server.HostColumn(getattr(s, 'hypervisor_hostname')),
47894791
format_columns.DictColumn(s.metadata),
47904792
)
@@ -4830,6 +4832,8 @@ def test_server_list_column_option(self):
48304832
'-c',
48314833
'Availability Zone',
48324834
'-c',
4835+
'Pinned Availability Zone',
4836+
'-c',
48334837
'Host',
48344838
'-c',
48354839
'Properties',
@@ -4852,6 +4856,7 @@ def test_server_list_column_option(self):
48524856
self.assertIn('Image ID', columns)
48534857
self.assertIn('Flavor ID', columns)
48544858
self.assertIn('Availability Zone', columns)
4859+
self.assertIn('Pinned Availability Zone', columns)
48554860
self.assertIn('Host', columns)
48564861
self.assertIn('Properties', columns)
48574862
self.assertCountEqual(columns, set(columns))
@@ -5264,6 +5269,7 @@ def test_server_list_long_with_host_status_v216(self):
52645269
self.flavor.name,
52655270
s.flavor['id'],
52665271
getattr(s, 'availability_zone'),
5272+
getattr(s, 'pinned_availability_zone', ''),
52675273
server.HostColumn(getattr(s, 'hypervisor_hostname')),
52685274
format_columns.DictColumn(s.metadata),
52695275
)
@@ -5318,6 +5324,7 @@ def test_server_list_long_with_host_status_v216(self):
53185324
self.flavor.name,
53195325
s.flavor['id'],
53205326
getattr(s, 'availability_zone'),
5327+
getattr(s, 'pinned_availability_zone', ''),
53215328
server.HostColumn(getattr(s, 'hypervisor_hostname')),
53225329
format_columns.DictColumn(s.metadata),
53235330
s.host_status,
@@ -5354,6 +5361,7 @@ class TestServerListV273(_TestServerList):
53545361
'Image ID',
53555362
'Flavor',
53565363
'Availability Zone',
5364+
'Pinned Availability Zone',
53575365
'Host',
53585366
'Properties',
53595367
)

0 commit comments

Comments
 (0)