From 5a333859fed02b5b12d183bba94150b0d3afbb87 Mon Sep 17 00:00:00 2001 From: Brian Coca Date: Mon, 19 Mar 2018 13:01:29 -0400 Subject: [PATCH] allow for parameterized string functions now also allow for ending parens from following, 1, 2, 4 and 5 match, rest are ignored. {doc | to_nice_json}} {{(doc | to_nice_json)}} {{doc | to_nice_json| from_json}} {{doc | to_nice_json()}} {{doc | to_nice_json(indent=2)}} {{doc | to_nice_json(indent=2) | from_json()}} {{doc | to_nice_json(indent=2) | from_json}} fixes #37579 --- lib/ansible/template/__init__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/ansible/template/__init__.py b/lib/ansible/template/__init__.py index 000c5b91e55..215a191f23b 100644 --- a/lib/ansible/template/__init__.py +++ b/lib/ansible/template/__init__.py @@ -290,7 +290,8 @@ class Templar: self.environment.block_end_string, self.environment.variable_end_string )) - self._no_type_regex = re.compile(r'.*\|\s*(?:%s)\s*(?:%s)?$' % ('|'.join(C.STRING_TYPE_FILTERS), self.environment.variable_end_string)) + self._no_type_regex = re.compile(r'.*?\|\s*(?:%s)(?:\([^\|]*\))?\s*\)?\s*(?:%s)' % + ('|'.join(C.STRING_TYPE_FILTERS), self.environment.variable_end_string)) def _get_filters(self, builtin_filters): '''