diff options
Diffstat (limited to 'openstackclient')
| -rw-r--r-- | openstackclient/network/sdk_utils.py | 23 | ||||
| -rw-r--r-- | openstackclient/network/v2/network_meter.py (renamed from openstackclient/network/v2/meter.py) | 0 | ||||
| -rw-r--r-- | openstackclient/network/v2/subnet.py | 10 | ||||
| -rw-r--r-- | openstackclient/tests/functional/network/v2/test_network_meter.py (renamed from openstackclient/tests/functional/network/v2/test_meter.py) | 0 | ||||
| -rw-r--r-- | openstackclient/tests/unit/network/v2/test_network_meter.py (renamed from openstackclient/tests/unit/network/v2/test_meter.py) | 10 |
5 files changed, 34 insertions, 9 deletions
diff --git a/openstackclient/network/sdk_utils.py b/openstackclient/network/sdk_utils.py index 7bd54e46..04f168be 100644 --- a/openstackclient/network/sdk_utils.py +++ b/openstackclient/network/sdk_utils.py @@ -13,8 +13,24 @@ import six -# Get the OSC show command display and attribute columns for an SDK resource. -def get_osc_show_columns_for_sdk_resource(sdk_resource, osc_column_map): +def get_osc_show_columns_for_sdk_resource( + sdk_resource, + osc_column_map, + invisible_columns=[] +): + """Get and filter the display and attribute columns for an SDK resource. + + Common utility function for preparing the output of an OSC show command. + Some of the columns may need to get renamed, others made invisible. + + :param sdk_resource: An SDK resource + :param osc_column_map: A hash of mappings for display column names + :param invisible_columns: A list of invisible column names + + :returns: Two tuples containing the names of the display and attribute + columns + """ + if getattr(sdk_resource, 'allow_get', None) is not None: resource_dict = sdk_resource.to_dict( body=True, headers=False, ignore_none=False) @@ -24,6 +40,9 @@ def get_osc_show_columns_for_sdk_resource(sdk_resource, osc_column_map): # Build the OSC column names to display for the SDK resource. attr_map = {} display_columns = list(resource_dict.keys()) + for col_name in invisible_columns: + if col_name in display_columns: + display_columns.remove(col_name) for sdk_attr, osc_attr in six.iteritems(osc_column_map): if sdk_attr in display_columns: attr_map[osc_attr] = sdk_attr diff --git a/openstackclient/network/v2/meter.py b/openstackclient/network/v2/network_meter.py index df0e1da1..df0e1da1 100644 --- a/openstackclient/network/v2/meter.py +++ b/openstackclient/network/v2/network_meter.py diff --git a/openstackclient/network/v2/subnet.py b/openstackclient/network/v2/subnet.py index 2771858b..403b4cd2 100644 --- a/openstackclient/network/v2/subnet.py +++ b/openstackclient/network/v2/subnet.py @@ -132,7 +132,13 @@ def _get_columns(item): 'subnet_pool_id': 'subnetpool_id', 'tenant_id': 'project_id', } - return sdk_utils.get_osc_show_columns_for_sdk_resource(item, column_map) + # Do not show this column when displaying a subnet + invisible_columns = ['use_default_subnetpool'] + return sdk_utils.get_osc_show_columns_for_sdk_resource( + item, + column_map, + invisible_columns=invisible_columns + ) def convert_entries_to_nexthop(entries): @@ -179,7 +185,7 @@ def _get_attrs(client_manager, parsed_args, is_create=True): ignore_missing=False) attrs['subnetpool_id'] = subnet_pool.id if parsed_args.use_default_subnet_pool: - attrs['use_default_subnetpool'] = True + attrs['use_default_subnet_pool'] = True if parsed_args.prefix_length is not None: attrs['prefixlen'] = parsed_args.prefix_length if parsed_args.subnet_range is not None: diff --git a/openstackclient/tests/functional/network/v2/test_meter.py b/openstackclient/tests/functional/network/v2/test_network_meter.py index 7dce34e7..7dce34e7 100644 --- a/openstackclient/tests/functional/network/v2/test_meter.py +++ b/openstackclient/tests/functional/network/v2/test_network_meter.py diff --git a/openstackclient/tests/unit/network/v2/test_meter.py b/openstackclient/tests/unit/network/v2/test_network_meter.py index b393f7fa..2b96f7a6 100644 --- a/openstackclient/tests/unit/network/v2/test_meter.py +++ b/openstackclient/tests/unit/network/v2/test_network_meter.py @@ -18,7 +18,7 @@ from mock import call from osc_lib import exceptions -from openstackclient.network.v2 import meter +from openstackclient.network.v2 import network_meter from openstackclient.tests.unit.identity.v3 import fakes as identity_fakes_v3 from openstackclient.tests.unit.network.v2 import fakes as network_fakes from openstackclient.tests.unit import utils as tests_utils @@ -62,7 +62,7 @@ class TestCreateMeter(TestMeter): self.network.create_metering_label = mock.Mock( return_value=self.new_meter) self.projects_mock.get.return_value = self.project - self.cmd = meter.CreateMeter(self.app, self.namespace) + self.cmd = network_meter.CreateMeter(self.app, self.namespace) def test_create_no_options(self): arglist = [] @@ -134,7 +134,7 @@ class TestDeleteMeter(TestMeter): meter=self.meter_list ) - self.cmd = meter.DeleteMeter(self.app, self.namespace) + self.cmd = network_meter.DeleteMeter(self.app, self.namespace) def test_delete_one_meter(self): arglist = [ @@ -235,7 +235,7 @@ class TestListMeter(TestMeter): return_value=self.meter_list ) - self.cmd = meter.ListMeter(self.app, self.namespace) + self.cmd = network_meter.ListMeter(self.app, self.namespace) def test_meter_list(self): arglist = [] @@ -274,7 +274,7 @@ class TestShowMeter(TestMeter): def setUp(self): super(TestShowMeter, self).setUp() - self.cmd = meter.ShowMeter(self.app, self.namespace) + self.cmd = network_meter.ShowMeter(self.app, self.namespace) self.network.find_metering_label = \ mock.Mock(return_value=self.new_meter) |
