From 05521bf84cb108c73bb36b270569b1986ad13f53 Mon Sep 17 00:00:00 2001 From: Bernard Cafarelli <bcafarel@redhat.com> Date: Mon, 28 Jan 2019 14:17:46 +0100 Subject: [PATCH] Remove str() when setting network objects names MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Most network commands use str() on name argument, which fails on python 2 with Unicode characters. This comes from parsed arguments so does not actually need this call. Sample command failing with current code: openstack network create test_unicodeā¢ Change-Id: Ie10b67864c912ee5c33e90b10c3d9705ee8307e7 Story: 2004356 Task: 27955 --- openstackclient/network/v2/network.py | 4 ++-- openstackclient/network/v2/network_agent.py | 2 +- openstackclient/network/v2/network_qos_policy.py | 2 +- openstackclient/network/v2/port.py | 2 +- openstackclient/network/v2/router.py | 2 +- openstackclient/network/v2/subnet.py | 2 +- openstackclient/network/v2/subnet_pool.py | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/openstackclient/network/v2/network.py b/openstackclient/network/v2/network.py index 0fdf62c95b..f5123932a3 100644 --- a/openstackclient/network/v2/network.py +++ b/openstackclient/network/v2/network.py @@ -72,7 +72,7 @@ def _get_columns_compute(item): def _get_attrs_network(client_manager, parsed_args): attrs = {} if parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) + attrs['name'] = parsed_args.name if parsed_args.enable: attrs['admin_state_up'] = True if parsed_args.disable: @@ -143,7 +143,7 @@ def _get_attrs_network(client_manager, parsed_args): def _get_attrs_compute(client_manager, parsed_args): attrs = {} if parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) + attrs['name'] = parsed_args.name if parsed_args.share: attrs['share_subnet'] = True if parsed_args.no_share: diff --git a/openstackclient/network/v2/network_agent.py b/openstackclient/network/v2/network_agent.py index ba2a2633ba..46e8d4b21c 100644 --- a/openstackclient/network/v2/network_agent.py +++ b/openstackclient/network/v2/network_agent.py @@ -351,7 +351,7 @@ class SetNetworkAgent(command.Command): obj = client.get_agent(parsed_args.network_agent) attrs = {} if parsed_args.description is not None: - attrs['description'] = str(parsed_args.description) + attrs['description'] = parsed_args.description if parsed_args.enable: attrs['is_admin_state_up'] = True attrs['admin_state_up'] = True diff --git a/openstackclient/network/v2/network_qos_policy.py b/openstackclient/network/v2/network_qos_policy.py index 2c6b841b49..fd5ff93771 100644 --- a/openstackclient/network/v2/network_qos_policy.py +++ b/openstackclient/network/v2/network_qos_policy.py @@ -38,7 +38,7 @@ def _get_columns(item): def _get_attrs(client_manager, parsed_args): attrs = {} if 'name' in parsed_args and parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) + attrs['name'] = parsed_args.name if 'description' in parsed_args and parsed_args.description is not None: attrs['description'] = parsed_args.description if parsed_args.share: diff --git a/openstackclient/network/v2/port.py b/openstackclient/network/v2/port.py index 1001e6cf41..f6d6fc7280 100644 --- a/openstackclient/network/v2/port.py +++ b/openstackclient/network/v2/port.py @@ -134,7 +134,7 @@ def _get_attrs(client_manager, parsed_args): attrs['dns_name'] = parsed_args.dns_name # It is possible that name is not updated during 'port set' if parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) + attrs['name'] = parsed_args.name # The remaining options do not support 'port set' command, so they require # additional check if 'network' in parsed_args and parsed_args.network is not None: diff --git a/openstackclient/network/v2/router.py b/openstackclient/network/v2/router.py index 1b7d6374a9..2ec3e2f094 100644 --- a/openstackclient/network/v2/router.py +++ b/openstackclient/network/v2/router.py @@ -85,7 +85,7 @@ def _get_columns(item): def _get_attrs(client_manager, parsed_args): attrs = {} if parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) + attrs['name'] = parsed_args.name if parsed_args.enable: attrs['admin_state_up'] = True if parsed_args.disable: diff --git a/openstackclient/network/v2/subnet.py b/openstackclient/network/v2/subnet.py index d252a7a51d..5f8113bb8d 100644 --- a/openstackclient/network/v2/subnet.py +++ b/openstackclient/network/v2/subnet.py @@ -169,7 +169,7 @@ def _get_attrs(client_manager, parsed_args, is_create=True): attrs = {} client = client_manager.network if 'name' in parsed_args and parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) + attrs['name'] = parsed_args.name if is_create: if 'project' in parsed_args and parsed_args.project is not None: diff --git a/openstackclient/network/v2/subnet_pool.py b/openstackclient/network/v2/subnet_pool.py index 81765ca17e..d8c06eb882 100644 --- a/openstackclient/network/v2/subnet_pool.py +++ b/openstackclient/network/v2/subnet_pool.py @@ -52,7 +52,7 @@ def _get_attrs(client_manager, parsed_args): network_client = client_manager.network if parsed_args.name is not None: - attrs['name'] = str(parsed_args.name) + attrs['name'] = parsed_args.name if parsed_args.prefixes is not None: attrs['prefixes'] = parsed_args.prefixes if parsed_args.default_prefix_length is not None: