mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-10-24 04:54:00 -07:00
parent
9d0150b2c3
commit
6cd4665412
34 changed files with 70 additions and 120 deletions
|
|
@ -9,7 +9,6 @@ __metaclass__ = type
|
|||
import re
|
||||
|
||||
from ansible.errors import AnsibleFilterError
|
||||
from ansible.module_utils.six import string_types
|
||||
from collections.abc import Mapping, Sequence
|
||||
|
||||
|
||||
|
|
@ -32,7 +31,7 @@ def _keys_filter_params(data, matching_parameter):
|
|||
raise AnsibleFilterError(msg % (elem, type(elem)))
|
||||
|
||||
for elem in data:
|
||||
if not all(isinstance(item, string_types) for item in elem.keys()):
|
||||
if not all(isinstance(item, str) for item in elem.keys()):
|
||||
msg = "Top level keys must be strings. keys: %s"
|
||||
raise AnsibleFilterError(msg % elem.keys())
|
||||
|
||||
|
|
@ -65,12 +64,12 @@ def _keys_filter_target_str(target, matching_parameter):
|
|||
|
||||
if isinstance(target, list):
|
||||
for elem in target:
|
||||
if not isinstance(elem, string_types):
|
||||
if not isinstance(elem, str):
|
||||
msg = "The target items must be strings. %s is %s"
|
||||
raise AnsibleFilterError(msg % (elem, type(elem)))
|
||||
|
||||
if matching_parameter == 'regex':
|
||||
if isinstance(target, string_types):
|
||||
if isinstance(target, str):
|
||||
r = target
|
||||
else:
|
||||
if len(target) > 1:
|
||||
|
|
@ -83,7 +82,7 @@ def _keys_filter_target_str(target, matching_parameter):
|
|||
except re.error:
|
||||
msg = "The target must be a valid regex if matching_parameter=regex. target is %s"
|
||||
raise AnsibleFilterError(msg % r)
|
||||
elif isinstance(target, string_types):
|
||||
elif isinstance(target, str):
|
||||
tt = (target, )
|
||||
else:
|
||||
tt = tuple(set(target))
|
||||
|
|
@ -117,10 +116,10 @@ def _keys_filter_target_dict(target, matching_parameter):
|
|||
if not all(k in elem for k in ('before', 'after')):
|
||||
msg = "All dictionaries in target must include attributes: after, before."
|
||||
raise AnsibleFilterError(msg)
|
||||
if not isinstance(elem['before'], string_types):
|
||||
if not isinstance(elem['before'], str):
|
||||
msg = "The attributes before must be strings. %s is %s"
|
||||
raise AnsibleFilterError(msg % (elem['before'], type(elem['before'])))
|
||||
if not isinstance(elem['after'], string_types):
|
||||
if not isinstance(elem['after'], str):
|
||||
msg = "The attributes after must be strings. %s is %s"
|
||||
raise AnsibleFilterError(msg % (elem['after'], type(elem['after'])))
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@ __metaclass__ = type
|
|||
|
||||
import re
|
||||
|
||||
from ansible.module_utils.six import binary_type, text_type
|
||||
from collections.abc import Mapping, Set
|
||||
from ansible.module_utils.common.collections import is_sequence
|
||||
from ansible.utils.unsafe_proxy import (
|
||||
|
|
@ -29,11 +28,11 @@ def make_unsafe(value):
|
|||
return set(make_unsafe(elt) for elt in value)
|
||||
elif is_sequence(value):
|
||||
return type(value)(make_unsafe(elt) for elt in value)
|
||||
elif isinstance(value, binary_type):
|
||||
elif isinstance(value, bytes):
|
||||
if _RE_TEMPLATE_CHARS_BYTES.search(value):
|
||||
value = _make_unsafe(value)
|
||||
return value
|
||||
elif isinstance(value, text_type):
|
||||
elif isinstance(value, str):
|
||||
if _RE_TEMPLATE_CHARS.search(value):
|
||||
value = _make_unsafe(value)
|
||||
return value
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue