summaryrefslogtreecommitdiffstats
path: root/lib/ansible/plugins/filter/flatten.yml
blob: b909c3d10c1a9d0182245765e1fd7d3d2e06e5fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
DOCUMENTATION:
  name: flatten
  version_added: "2.5"
  short_description: flatten lists within a list
  description:
    - For a given list, take any elements that are lists and insert their elements into the parent list directly.
  positional: _input, levels, skip_nulls
  options:
    _input:
      description: First dictionary to combine.
      type: dict
      required: true
    levels:
      description: Number of recursive list depths to flatten.
      type: int
    skip_nulls:
      description: Skip C(null)/C(None) elements when inserting into the top list.
      type: bool
      default: true

EXAMPLES: |

    # [1,2,3,4,5,6]
    flat: "{{ [1 , 2, [3, [4, 5]], 6] | flatten }}"

    # [1,2,3,[4,5],6]
    flatone: "{{ [1, 2, [3, [4, 5]], 6] | flatten(1) }}"

RETURN:
  _value:
    description: The flattened list.
    type: list