From 8a754e0858d922e955e71b253c139e071ecec432 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 18:04:21 +0200 Subject: Adding upstream version 2.14.3. Signed-off-by: Daniel Baumann --- lib/ansible/plugins/filter/subelements.yml | 38 ++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 lib/ansible/plugins/filter/subelements.yml (limited to 'lib/ansible/plugins/filter/subelements.yml') diff --git a/lib/ansible/plugins/filter/subelements.yml b/lib/ansible/plugins/filter/subelements.yml new file mode 100644 index 0000000..a2d1a94 --- /dev/null +++ b/lib/ansible/plugins/filter/subelements.yml @@ -0,0 +1,38 @@ +DOCUMENTATION: + name: subelements + version_added: "2.7" + short_description: retuns a product of a list and it's elements + positional: _input, _subelement, skip_missing + description: + - This produces a product of an object and the subelement values of that object, similar to the subelements lookup. This lets you specify individual subelements to use in a template I(_input). + options: + _input: + description: Original list. + type: list + elements: any + required: yes + _subelement: + description: Label of property to extract from original list items. + type: str + required: yes + skip_missing: + description: If C(True), ignore missing subelements, otherwise missing subelements generate an error. + type: bool + default: no + +EXAMPLES: | + # data + users: + - groups: [1,2,3] + name: lola + - name: fernando + groups: [2,3,4] + + # user_w_groups =>[ { "groups": [ 1, 2, 3 ], "name": "lola" }, 1 ], [ { "groups": [ 1, 2, 3 ], "name": "lola" }, 2 ], [ { "groups": [ 1, 2, 3 ], "name": "lola" }, 3 ], [ { "groups": [ 2, 3, 4 ], "name": "fernando" }, 2 ], [ { "groups": [ 2, 3, 4 ], "name": "fernando" }, 3 ], [ { "groups": [ 2, 3, 4 ], "name": "fernando" }, 4 ] ] + users_w_groups: {{ users | subelements('groups', skip_missing=True) }} + +RETURN: + _value: + description: List made of original list and product of the subelement list. + type: list + elements: any -- cgit v1.2.3