From e67eba877edd3a315edf5f4ad081a83454637880 Mon Sep 17 00:00:00 2001 From: Ricardo Carrillo Cruz Date: Tue, 2 May 2017 16:40:37 +0200 Subject: [PATCH] Sanitize ovs br-get-external-id output on openvswitch_bridge (#24209) If a bridge does not have external_ids, ovs-vsctl returns '{}'. This causes issues on the current want vs have comparison in cases where the play does not define external_ids, as the comparison is None vs '{}'. --- .../modules/network/ovs/openvswitch_bridge.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/lib/ansible/modules/network/ovs/openvswitch_bridge.py b/lib/ansible/modules/network/ovs/openvswitch_bridge.py index 569a63f7b3a..11ec5305cbc 100644 --- a/lib/ansible/modules/network/ovs/openvswitch_bridge.py +++ b/lib/ansible/modules/network/ovs/openvswitch_bridge.py @@ -117,14 +117,17 @@ from ansible.module_utils.six import iteritems from ansible.module_utils.pycompat24 import get_exception def _external_ids_to_dict(text): - d = {} + if not text: + return None + else: + d = {} - for l in text.splitlines(): - if l: - k, v = l.split('=') - d[k] = v + for l in text.splitlines(): + if l: + k, v = l.split('=') + d[k] = v - return d + return d def map_obj_to_commands(want, have, module): commands = list()