diff --git a/lib/ansible/modules/clustering/oc.py b/lib/ansible/modules/clustering/oc.py index a53064277d7..0fdae9dcb89 100644 --- a/lib/ansible/modules/clustering/oc.py +++ b/lib/ansible/modules/clustering/oc.py @@ -347,28 +347,9 @@ class OC(object): _, changed = self.merge(value, node, changed) elif isinstance(value, list) and key in destination.keys(): - try: - if set(destination[key]) != set(destination[key] + - source[key]): - destination[key] = list(set(destination[key] + - source[key])) - changed = True - except TypeError: - for new_dict in source[key]: - found = False - for old_dict in destination[key]: - if ('name' in old_dict.keys() and - 'name' in new_dict.keys()): - if old_dict['name'] == new_dict['name']: - destination[key].remove(old_dict) - break - if old_dict == new_dict: - found = True - break - - if not found: - destination[key].append(new_dict) - changed = True + if destination[key] != source[key]: + destination[key] = source[key] + changed = True elif (key not in destination.keys() or destination[key] != source[key]):