我正在尝试在Ansible播放循环中将变量连接到自身,但是我无法做到这一点。可能很简单,但却无法实现。

我在这里尝试。

- name: all directories
  set_fact: all_dir={{ item }}
  with_items:
    - src/main/java
    - src/main/test
    - src/main/resources

- debug: var=all_dir


all_dir中的预期输出

 src/main/java src/main/test src/main/resources


我尝试了join。有什么建议吗?

最佳答案

join是您应该使用的。

 - hosts: 127.0.0.1
   connection: local
   vars:
     dirs:
       - src/main/java
       - src/main/test
       - src/main/resources
     all_dir: "{{ dirs | join(' ') }}"
   tasks:
     - debug: var=all_dir


或通过set_fact

 - hosts: 127.0.0.1
   connection: local
   vars:
     dirs:
       - src/main/java
       - src/main/test
       - src/main/resources
   tasks:
     - set_fact:
         all_dir: "{{ dirs | join(' ') }}"
     - debug: var=all_dir




TASK: [debug var=all_dir] *****************************************************
ok: [127.0.0.1] => {
    "var": {
        "all_dir": "src/main/java src/main/test src/main/resources"
    }
}

关于jinja2 - 在Ansible中将变量连接到自身,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34765593/

10-09 19:54