diff options
| author | Dean Troyer <dtroyer@gmail.com> | 2017-04-27 10:26:07 -0500 |
|---|---|---|
| committer | Dean Troyer <dtroyer@gmail.com> | 2017-04-27 20:36:00 +0000 |
| commit | 589a65c3fee2d61a13eaa53785afd3525d9ae80d (patch) | |
| tree | 94864ff5360391385b3e73517e3698e6f3cc14ab /openstackclient/network/v2/network.py | |
| parent | 7b609ebd55b1ff38be4763b5122b4a48a05ef931 (diff) | |
| download | python-openstackclient-589a65c3fee2d61a13eaa53785afd3525d9ae80d.tar.gz | |
Fix Nova-net netowrk commands
In cleaning up functional tests for nova-net, I discovered some
problems in network create:
* --subnet option is required in network create command
* Switch API to use /os-networks rather than /os-tenant-networks as this
is what we were actually using via novaclient
* Fix functional tests for nova-net
* Normalize some private function names in network/v2/network.py
Change-Id: I426b864406756d58d140575a3a45ee9aee67ce84
Diffstat (limited to 'openstackclient/network/v2/network.py')
| -rw-r--r-- | openstackclient/network/v2/network.py | 45 |
1 files changed, 23 insertions, 22 deletions
diff --git a/openstackclient/network/v2/network.py b/openstackclient/network/v2/network.py index 1f5d8a03..e4cf54bf 100644 --- a/openstackclient/network/v2/network.py +++ b/openstackclient/network/v2/network.py @@ -42,7 +42,7 @@ _formatters = { } -def _get_network_columns(item): +def _get_columns_network(item): column_map = { 'subnet_ids': 'subnets', 'is_admin_state_up': 'admin_state_up', @@ -59,14 +59,14 @@ def _get_network_columns(item): return sdk_utils.get_osc_show_columns_for_sdk_resource(item, column_map) -def _get_columns(item): +def _get_columns_compute(item): column_map = { 'tenant_id': 'project_id', } return sdk_utils.get_osc_show_columns_for_sdk_resource(item, column_map) -def _get_attrs(client_manager, parsed_args): +def _get_attrs_network(client_manager, parsed_args): attrs = {} if parsed_args.name is not None: attrs['name'] = str(parsed_args.name) @@ -135,6 +135,19 @@ def _get_attrs(client_manager, parsed_args): return attrs +def _get_attrs_compute(client_manager, parsed_args): + attrs = {} + if parsed_args.name is not None: + attrs['name'] = str(parsed_args.name) + if parsed_args.share: + attrs['share_subnet'] = True + if parsed_args.no_share: + attrs['share_subnet'] = False + if parsed_args.subnet is not None: + attrs['subnet'] = parsed_args.subnet + return attrs + + def _add_additional_network_options(parser): # Add additional network options @@ -168,19 +181,6 @@ def _add_additional_network_options(parser): help=_("Do not make the network VLAN transparent")) -def _get_attrs_compute(client_manager, parsed_args): - attrs = {} - if parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) - if parsed_args.share: - attrs['share_subnet'] = True - if parsed_args.no_share: - attrs['share_subnet'] = False - if parsed_args.subnet is not None: - attrs['subnet'] = parsed_args.subnet - return attrs - - # TODO(sindhu): Use the SDK resource mapped attribute names once the # OSC minimum requirements include SDK 1.0. class CreateNetwork(common.NetworkAndComputeShowOne): @@ -289,21 +289,22 @@ class CreateNetwork(common.NetworkAndComputeShowOne): parser.add_argument( '--subnet', metavar='<subnet>', + required=True, help=_("IPv4 subnet for fixed IPs (in CIDR notation)") ) return parser def take_action_network(self, client, parsed_args): - attrs = _get_attrs(self.app.client_manager, parsed_args) + attrs = _get_attrs_network(self.app.client_manager, parsed_args) obj = client.create_network(**attrs) - display_columns, columns = _get_network_columns(obj) + display_columns, columns = _get_columns_network(obj) data = utils.get_item_properties(obj, columns, formatters=_formatters) return (display_columns, data) def take_action_compute(self, client, parsed_args): attrs = _get_attrs_compute(self.app.client_manager, parsed_args) obj = client.api.network_create(**attrs) - display_columns, columns = _get_columns(obj) + display_columns, columns = _get_columns_compute(obj) data = utils.get_dict_properties(obj, columns) return (display_columns, data) @@ -660,7 +661,7 @@ class SetNetwork(command.Command): client = self.app.client_manager.network obj = client.find_network(parsed_args.network, ignore_missing=False) - attrs = _get_attrs(self.app.client_manager, parsed_args) + attrs = _get_attrs_network(self.app.client_manager, parsed_args) client.update_network(obj, **attrs) @@ -677,12 +678,12 @@ class ShowNetwork(common.NetworkAndComputeShowOne): def take_action_network(self, client, parsed_args): obj = client.find_network(parsed_args.network, ignore_missing=False) - display_columns, columns = _get_network_columns(obj) + display_columns, columns = _get_columns_network(obj) data = utils.get_item_properties(obj, columns, formatters=_formatters) return (display_columns, data) def take_action_compute(self, client, parsed_args): obj = client.api.network_find(parsed_args.network) - display_columns, columns = _get_columns(obj) + display_columns, columns = _get_columns_compute(obj) data = utils.get_dict_properties(obj, columns) return (display_columns, data) |
