我想在我的bigip上创建几个节点。为此我想在我的var提示符上做一个循环,并在我的变量{{node_list}}中注册每个值。
这就是我尝试过的
- name: node creation
hosts: F5
gather_facts: no
connection: local
vars_prompt:
## ASK NUMBER OF NODES
- name: node_nb
prompt: "number of nodes"
private: no
## ASK THE NAME AND IP WITH FORMAT NAME;IP
- name: node_list
prompt: "name and Ip of the node like that toto;1.1.1.1"
private: no
with_sequence: count={{ node_nb | int }}
- name: Create node
bigip_node:
user: '{{ ansible_user }}'
password: '{{ ansible_password }}'
server: 'xxxxx'
host: '{{ (item).split(";")[1] }}'
name: '{{ (item).split(";")[0] }}'
partition: 'Common'
state: present
validate_certs: false
with_items: '{{ node_list }}'
只需让它们进入以空格分隔的列表,因为您已经在使用;
将节点名称与IP分开,这样还可以省去必须提示计数的麻烦,因为列表中的数量很多
with_sequence
只适用于任务。
所以只需将一个变量node_list
保存到vars_prompt并传递','分隔列表['asd;1.1.1.1','sdf;2.2.2.2']
作为值。