如何使用 Ansible 将多个过滤器拆分为多行?

Ric*_*ral 3 multiline ansible ansible-filter

这是我的剧本中的一项任务:

- name: Parse 'LANGUAGE' from current locale and language configuration
  set_fact:
    locale_language: "{{ locale_status.stdout | regex_search('LANGUAGE=([^\n]+)', '\\1') | default([locale_lang], true) | first }}"
Run Code Online (Sandbox Code Playgroud)

我试图找到一种方法将多个过滤器行拆分为多行以使其更具可读性,但我所做的一切都不起作用。甚至有可能在不使整个事情变得更复杂的情况下阅读吗?

小智 7

你可以试试这样的

- name: Parse 'LANGUAGE' from current locale and language configuration
  set_fact:
    locale_language: "{{ locale_status.stdout \
                     | regex_search('LANGUAGE=([^\n]+)', '\\1') \
                     | default([locale_lang], true) \
                     | first }}"
Run Code Online (Sandbox Code Playgroud)

因为我已经测试了下面的任务并且它工作正常,

tasks:
    - set_fact:
        locale_language: "{{ shubham \
                         | quote }}"
    - debug:
        msg: "{{ locale_language }}"
Run Code Online (Sandbox Code Playgroud)