我有这个变量:
amq_ping_hosts:
- "10.1.1.1"
- "10.1.1.2"
- "10.1.1.3"
- "10.1.1.4"
并且我想用逗号分隔的字符串创建变量:
ping主机:10.1.1.1,10.1.1.2,10.1.1.3.10.1.1.4
我尝试过:
- name: "set fact ping_hosts"
set_fact:
ping_hosts: "{{ ping_hosts }} ',' {{ item }}"
loop: "{{ amq_ping_hosts }}"
但是ping_hosts是一个未定义的变量
答案 0 :(得分:3)
使用join。以下任务
- set_fact:
ping_hosts: "{{ amq_ping_hosts|join(',') }}"
- debug:
var: ping_hosts
给予
ping_hosts: 10.1.1.1,10.1.1.2,10.1.1.3,10.1.1.4
答案 1 :(得分:1)
您可以使用python中的join
函数:
tasks:
- set_fact:
ping_hosts: "{{ ','.join(amq_ping_hosts) }}"
- debug:
var: ping_hosts